Use of adaptiveFatSpin / disableFatSpin java options for hyperthreaded CPU

Hi!
Just heard of the java options
jrockit.vm.useAdaptiveFatSpin / jrockit.vm.disableFatSpin / jrockit.vm.raceShouldAlwaysSpin
A colleague told that they had gotten considerably better CPU behavior, ie. more idle time, when adding the disableFatSpin java option.
Could anyone enligthen me on exactly what these options do, and why it in some cases can lead to less work for the CPU?
PS! As it is said in another (and only :-) posting regarding these options, they are only valid for multi cpu systems.
Thanks in advance!
Regards,
Vidar

Vidar Moe said the following on 2005-10-28 09:43:
Hi!
Just heard of the java options
jrockit.vm.useAdaptiveFatSpin / jrockit.vm.disableFatSpin /
jrockit.vm.raceShouldAlwaysSpinYes, those options exist and are unsupported (as in they can change in
the next release).
A colleague told that they had gotten considerably better CPU behavior,
ie. more idle time, when adding the disableFatSpin java option.
Could anyone enligthen me on exactly what these options do, and why it in some
cases can lead to less work for the CPU?To tell you exactly what the different options do I would probably
have to explain the whole java lock code in JRockit. It also differs
slightly depending on which version of JRockit you are running. I will
assume that you know what thin (deflated)/fat (inflated) locks are, or
else you can always read up on the general ideas in:
http://www.research.ibm.com/people/d/dfb/papers/Bacon97Featherweight.pdf
Assuming that you are running JRockit J2SE 5.0, the following is true.
jrockit.vm.disableFatSpin, will turn of all optimistic spinning when
fat locks are contended. (More information below)
jrockit.vm.useAdaptiveFatSpin and jrockit.vm.raceShouldAlwaysSpin
changes the behavior when trying to reacquire a fat lock when it is
contended. (The behavior is complex and involves heuristics that don't
make much sense without intimate knowledge of the JRockit source code)
The reason that you can get "better" CPU behavior if you turn off
optimistic spinning is that the threads will block directly when a
lock is held by somebody else. This can be beneficial, depending on
your application and how it interacts with locks, but for most
applications, locks are only held for short periods of time, and it is
highly likely that the thread holding the lock will release it soon.
So soon in fact that it often costs less to spin for a while waiting
for him to finish instead of doing a block, which would force a
complete context switch and maybe some OS-signaling. If the
application on the other hand has a very small number of highly
contended locks that are held for a long time, you can get an
excessive amount of spinning.
PS! As it is said in another (and only :-) posting regarding these options,
they are only valid for multi cpu systems.
Thanks in advance!
Regards,
VidarHope this helps.
/Bj?rn

Similar Messages

  • Any options for hyperthreading? Envy 17/i7

    Hi,
        not sure which forum to post this in, but since we're talking about hardware level concurrency...
        are there any options configurable for hyperthreading on the envy 17 (3002ea)? Processor is an i7.
        I have an intensive application that I know for a fact won't benefit from additional logical cores (it only uses two threads), so I want to experiment a bit.
    thanks

    Hi Celeste,
    Welcome to the HP Community Forum.
    If you are running the computer on battery -- and you are leaving it alone for five minutes, you may actually want it to sleep.  It uses far fewer resources to sleep than it does to stay active.  Your system provides for "rapid wake up" and should respond soon after you open the lid when you again need it.
    OK -- assuming you cannot wait even a few seconds!  Smiling.
    You might have missed a secondary setting that puts the notebook to sleep when it is running on battery.  The notebook might be going to sleep sooner than you would like.
    Control Panel > set icon view > Power Options > Change when the computer sleeps >
    On Page:  Change settings for the Plan
    There are two main adjustments:  On battery and Plugged in
    You need to adjust the settings for the Display and for the amount of time the computer waits before it goes to sleep.
    You can also adjust the brightness to save battery, that is, you can set the brightness to be a bit "less bright" when running on battery.
    Click the Kudos Thumbs-Up to say Thank You!
    And...Click Accept as Solution when my Answer provides a Fix or Workaround!
    I am pleased to provide assistance on behalf of HP. I do not work for HP. 
    Kind Regards,
    Dragon-Fur

  • Generate Java option for PL SQL packages

    Hi
    I recently found out that there is a 'generate java' option in the JDeveloper IDE for PLSQL packages, which creates a Java representation of the PLSQL package.
    What is the use of doing this? can anyone share tutorials that makes use of this feature

    This link may helpful
    Oracle PL/SQL Package - DB Adapter

  • Java option for Sun Solaris

    We have Weblogic 6.1 SP1 for Solaris.
    Weblogic install created startWebLogic.sh
    script has the JVM option set to -hotspot
    for Solaris. -hotspot represents client VM.
    Is this what is recommended for Solaris?
    I would like to know the performance and
    memory issues related to using -hotspot vs
    -server.
    Thanks

    hi Ravi.
    I made a mistake earlier in my reply to this posting that I would like
    to correct. We only support the JDK 1.3.1 server VM with hotspot for
    WLS 6.1 on solaris. As William pointed out this is on the platform
    support page.
    If you use the -server option you will get the hotspot server VM in
    mixed mode.
    Apologies if this caused any confusion.
    Regards,
    Michael
    ravi wrote:
    We have Weblogic 6.1 SP1 for Solaris.
    Weblogic install created startWebLogic.sh
    script has the JVM option set to -hotspot
    for Solaris. -hotspot represents client VM.
    Is this what is recommended for Solaris?
    I would like to know the performance and
    memory issues related to using -hotspot vs
    -server.
    Thanks--
    Developer Relations Engineer
    BEA Support

  • How to use auto-increment and search option for MS Access DB

    Dear All,
               I have configured our invoice in Adobe Livecycle and connected it to MS Acess 2007 as per http://forms.stefcameron.com/2006/09/18/connecting-a-form-to-a-database/.
    All is working fine, I can insert, retrieve data from DB to invoice and vice versa.
    Now I want few things to be implemented on our invoice.
    When ever I open our invoice, it populate the first entry from DB, Is it possible to populate the last entry ?
    Auto increment invoice number from MS Access DB every time we open our invoice after save.
    How to implement search option from DB for invoice number ?
    Please let me know if someone can provide me help on my scenario, so that I can share more stuff related to invoice and DB.
    Look forward to hearing soon from experts and other team members.
    Thanks & Regards
    Riyad...

    As far as I know there is not any auto increment data type in Oracle. Instead of this you should create a sequence and get the next value of the sequence while creating a row in your table.
    CREATE SEQUENCE Test_Sequence ;
    CREATE TABLE Test_Table ( Id NUMBER , Foo VARCHAR2(4) ) ;
    ALTER TABLE Test_Table ADD CONSTRAINT Test_Table_PK_Id PRIMARY KEY ( Id ) ;
    INSERT INTO Test_Table ( Id , Information ) VALUES ( Test_Sequence.NEXTVAL , 'FOO' ) ;

  • Setting different java options for each KJS.

    Hi there,
    We are using a monitoring software that help us diagnose and troubleshoot our applications deployed on iPlanet App Server 6.5. The problem is that the configuration is done by setting a CLASSPATH variable that contains the config files for the monitoring software. As we have two KJS process for serving that app, both KJS process pick up the same config files, including the port definition for that monitoring software, which causes the second KJS process to fail.
    Is there any way to add different modifiers to the startup of the different KJS?. We really would appreciate any help.

    I am not aware of your monitoring software as well as configuration files. Are these file are of application server supplied file or user-customed? You have to mention somehow to distinguish both kjs port in same configuration files. Such as application server is having different KJS port number setting in thier installation config files.
    I am not sure it will help you or not.

  • Can not increase the Max memor pool from java options for a tomcat service

    I have a tomcat service on a windows 2003 server, which is 32-bit windows. I have a 4G RAM on this server machine. When I try to increase the Max memory pool from the tomcat5w.exe tool by inserting 2000m in the Max pool memory text field, and try to restart the service; it gives me an error and the service does not get restarted. I have tried decreasing the threads stack and the perm gen, but still the service does not get started
    Does any one have any suggestion or has experienced similar problem?
    Thank you in advance

    You won't be able to use much more than 1.4G probably. The amount of physical memory you have is somewhat irrelevant because 32 bit windows can only address 4G and something like 2G of that is reserved for the OS and with what you have left of that 4G you have to include space for shared libraries etc and the thread stacks (which takes memory away from what you can allocate to the heap).
    As kajbj said you need to look at a 64 bit architecture to allocate more memory (or as a hack I think you can tell the OS to use less memory for itself).

  • HT3529 I have updated to iOS 7. Now how to edit my message. Previously we use to have the edit option for whole message so that we can delete certain lines which we don't won't in that whole message. Now that option is not available so what is the alterna

    Can one give me the suggestion

    Go the the Groups section of Contact and Calendar apps and uncheck or delete FB

  • Would be useful if there was a monitor option for posts

    When you post a message to a forum it would be useful if there was an option for it to email you when your post has been replied to.
    Also when performing a search it would be useful to display the number of replies to the messages - ie there is no point looking at a message if it has had no reply.

    Hi Todd,
    thanks for the feedback. I will share this with the technical team.
    Thanks and kind regards,
    Claire

  • How to add a java option in oas 10g 9.0.4?

    I need add a java option in my oas 10g...
    I have an application implemented with jdeveloper 10g (10.1.2) and its need to use other jdbc libraries acording:
    http://radio.weblogs.com/0118231/stories/2005/05/27/workaroundForDeployingAdf1012AppUsingIntermediaDomainsToOracleAs904.html
    Using EnterpriseManager, i add a java option for the OC4J instance where my ADF 10.1.2-based application will be deployed:
    [b]-Xbootclasspath/p: C:\oracle\infra\jdbc-10.1.0.4\ojdbc14.jar;C:\oracle\infra\jdbc-10.1.0.4\orai18n.jar
    but now, ths oc4j instance dont init
    ...my opmn.xml file contains:
    <process-type id="ADF_050615" module-id="OC4J">
    <module-data>
    <category id="start-parameters">
    <data id="java-options" value="-server -Xrs -Djava.security.policy=C:\oracle\infra\j2ee\ADF_050615\config\java2.policy -Djava.awt.headless=true
                             -Xbootclasspath/p: C:\oracle\infra\jdbc-10.1.0.4\ojdbc14.jar;C:\oracle\infra\jdbc-10.1.0.4\orai18n.jar"
                             />
    <data id="oc4j-options" value="-properties"/>
    </category>
    <category id="stop-parameters">
    <data id="java-options" value="-Djava.security.policy=C:\oracle\infra\j2ee\ADF_050615\config\java2.policy -Djava.awt.headless=true"/>
    </category>
    </module-data>
    </process-type>
    Help me please

    Rigoberto, there should be no space between "-Xbootclasspath/p:" and the path "C:\oracle\infra\jdbc-10.1.0.4\ojdbc14.jar;C:\oracle\infra\jdbc-10.1.0.4\orai18n.jar"
    By the way, one can always take a look at the logs at
      $ORACLE_HOME/opmn/logs
    especially those files whose names start with OC4J~ if there is some wrong with oc4j processes. Those files are the default oc4j stout and sterr. If oc4j can not init, there should be some kind of error message in them.
    By the way, the following line may be deleted since no property file is specified.
      <data id="oc4j-options" value="-properties"/>
    Hope this helps.

  • What Java compiler for Java Card development ?

    What Java compiler and options should be used for Java Card development with the goal of generating correct, and (secondarily) small or/and fast code after conversion to Java Card bytecode using converter ?
    In particular
    - Is use of JDK 7 approved by Oracle for Java Card development? That would solve security problems associated with (the web components of the JRE of) some earlier JDK, including the latest JDK6. The JCDK 3.0.4 release notes states "+the commercial version of Java Development Kit (JDK software) version 6 Update 10 (JDK 6 Update 10) or later is required+, but that does not answer that question.
    - Anyone had _bad_ experience (like incorrect or disastrous code) with the Java compiler bundled with Eclipse ? I have seen at least one case where org.eclipse.jdt.core_3.7.3.v20120119-1537.jar produced slightly more compact code than javac.
    - Anyone had _bad_ experience with javac in jdk1.3 ? In an applet involving a "finally" clause, I've seen it generating more compact code than later javac (which in my test triplicated the code for the finally clause).

    What Java compiler and options should be used for Java Card development with the goal of generating correct, and (secondarily) small or/and fast code after conversion to Java Card bytecode using converter ?-target -source may be required to generate compatible byte code. Depending on the CAP file converter being used debug information may also help. Remember that Java Card is a subset of the Java language (also there are short opcodes that Java doesn't have etc) so a lot of the work for optimisation is done by the converter or the JCRE. You can look at the JCA code generated to determine what works best for your applets. There are also some ways of stripping out dead code etc from JCA files (return statements after a throw etc) to reduce your code size. Most of the speed optimisations come from your code (avoiding context switches and unnecessary security/access checks).
    The compactness of your Java Card binary may not be directly related to the size of your compiled Java code. It can depend on the converter you use and any optimisaitons the JCRE might try to do when the code is loaded.
    - Is use of JDK 7 approved by Oracle for Java Card development? That would solve security problems associated with (the web components of the JRE of) some earlier JDK, including the latest JDK6. Java Card does not use any of the libraries from the JDK/JRE. All of the libraries are provided by the JCRE on the smartcard.
    The JCDK 3.0.4 release notes states "+the commercial version of Java Development Kit (JDK software) version 6 Update 10 (JDK 6 Update 10) or later is required+, but that does not answer that question.Anything above JDK6u10 is supported. If you use Java 7 you may need to add a -source and -target flag when compiling.
    - Anyone had _bad_ experience (like incorrect or disastrous code) with the Java compiler bundled with Eclipse ? I have seen at least one case where org.eclipse.jdt.core_3.7.3.v20120119-1537.jar produced slightly more compact code than javac.We generally use the Eclipse compiler as we find that we get more deterministic builds. When CAP files are sent for security review it is helpful to have the reviewer able to generate a CAP file that matches the one you sent to confirm the binary is what you say it is.
    - Anyone had _bad_ experience with javac in jdk1.3 ? In an applet involving a "finally" clause, I've seen it generating more compact code than later javac (which in my test triplicated the code for the finally clause).We do not use anything less than Java 6 for compilation.
    - Shane

  • BUG or ER - Editing the "Launch Settings - Java Options"

    Project Properties : Run/Debug/Profile : Edit : Launch Settings : Java Options
    I changed added -Djps.auth.debug=false -Djps.auth.debug.verbose=false
    Is it normal that I've to restart WebLogic to get the change applied ?
    I feel it should be applied the next time I run the application ...
    But it does work unless I restart the server, not a big deal, but still, took me few minutes to figure out
    At worst, it could be nice to have a pop up to warn, and even to offer to restart the application server by clicking on restart directly from the pop up ...

    Indeed, these parameters are java options for your WebLogic Server.
    After it was started the first time you ran your application, we keep it up and running (luckily, considering the time it takes to start up :));
    but that means that these parameters are not taken into account until the next start up.
    Regards,
    Didier.

  • Windows command length execeeded when add java options in opmn.xml

    Hi All,
    I have a Oracle AS 9i installed on Windows 2000. There are some requirement from my application that need to add additional java-options when start up OC4J. So, I updated the opmn.xml by add my things to <data id="java-options" > for start-parameters.
    But when I start up server, I got following information in ipm.log:
    06/05/16 17:18:06 create_proc: Windows command length exceeded: D:\ora9ias\jdk\bin\javaw.exe
    I have tried Oracle AS 10g with the same OS and java-options, the server can start up without any problem.
    Is there anyway to make Oracle AS 9i work in this situation?
    Thanks for any help.

    Hi again,
    Solved the issue simply by editing the xml file with sed:
    VAR1='OC4J_I413\/config\/java2\.policy -Djava\.awt\.headless\=true -Dhttp\.webdir\.enable\=false -XX\:MaxPermSize\=128M -Xms512M -Xmx1024M -XX\:AppendRatio\=3\"\/\>'
    VAR2='OC4J_I413\/config\/java2\.policy -Djava\.awt\.headless\=true -Dhttp\.webdir\.enable\=false -XX\:MaxPermSize\=256M -Xms512M -Xmx1024M -XX\:AppendRatio\=3 -Duser\.country\=SE -Duser\.language\=sv\"\/\>'
    sed "s/$VAR1/$VAR2/" opmn.xml > Newopmn.xml; cp Newopmn.xml opmn.xml
    This is a text string that contains start parameters and it can be found here:
    <category id="start-parameters">
    <data id="java-options" value="-server -Djava.security.policy=$ORACLE_HOME/j2ee/OC4J_I413/config/java2.policy -Djava.awt.headless=true -Dhttp.webdir.enable=false -XX:MaxPermSize=128M -Xms512M -Xmx1024M -XX:AppendRatio=3"/>
    //Kerstin

  • Tools and sdk to make java applet for JCOP31 ?

    Dear friend,
    we have a contactless chip card with NXP contactless chip 36 Kb and 72 Kb...
    it has JCOP31 (java card open platform) inside the contactless chip..
    and we have to build the java applet to be inserted into the JCOP31 chip ...
    my questions :
    ========
    1. can we use eclipse to make java applet for this purpose ?
    2. what other tools and SDK do we need to make this Java applet and insert it into the
    JCOP31 chip ?
    3. How can we get the tools ? do you provide it ?
    4. do you know any company that can make this type of java applet for JCOP 31 ?
    5. do you know any company that provide training to make this java applet for jcop31 ?
    Thank you,
    Hendy
    IT Manager
    PT. Jaya Smart Technology
    Jalan Kapuk Kamal No. 45
    Jakarta
    Mobile : 62 815 840 528 63

    4. Anyone can write you an applet. The specification is open. You could e.g. contact IBM or NXP directly.
    5. NXP offers twice a year a training in Europe and once a yeat in Asia. Contact the customer support at NXP. Also there is a workshop about the 'Art of Java Card Programming' at the smart-university.net (17th Sept., Sophia Antipolis, France). But I think this is for advanced Java Card programmers.

  • Restrict regular users to use only certain ldm command options

    I would like to restrict regular users to use only certain ldm command options, for example only list, bind/unbind, stop/start
    What is the best practice to do it?
    Thanks

    Solution provided by one of my colleagues:
    Installing sudo and configure sudoers file "User privilege specification" section similar to the following example:
    # User privilege specification
    root ALL=(ALL) ALL
    user1 host1 = /opt/SUNWldm/bin/ldm ls *
    user1 host1 = /opt/SUNWldm/bin/ldm stop *
    user1 host1 = /opt/SUNWldm/bin/ldm stop -f *
    user1 host1 = /opt/SUNWldm/bin/ldm start *
    user1 host1 = /opt/SUNWldm/bin/ldm bind *
    user1 host1 = /opt/SUNWldm/bin/ldm unbind *
    **Note*: asterisk should be at the end of each row. They are not displayed in the posted message...*

Maybe you are looking for

  • Invoice payment due date to friday if it falls on Weekend

    Hi All, I have an interesting requirements in payment terms due date calculation. Say we assign a payment term to customer and Invoice is done.  If the due date falls in the weekend ..say 2 july 2014 which is  a Saturday. Can we set the system so due

  • How can I get the number of computers that a specific user had add to domain?

    Greetings In Win Srv 2K8 I know how to increase\decrease the total number of computers that any user can add to domain. (http://support.microsoft.com/kb/243327/en-us) but there is any way to get the number of computer accounts that a user had add? th

  • Checking Database performance - DB02

    Hi All, I had a query with DB02, 1. In v3.5 when we go to transaction DB02 and check the Tables and Indexes tab and look into Detailed Analysis, we can specify the desired object for which we need the analysis. 2. In v7.0 if we see transaction DB02 w

  • Difference - ORDERS05 sent from SAP to Supplier and SAP to SNC to supplier

    Hi Friends, Want to know the Difference between two scenario - detail level analysis, 1. ORDERS05 IDoc (Purchase Order) sent directly from SAP to Supplier. 2. ORDERS05 IDoc (Purchase Order) sent from SAP to SNC and then to Supplier. Is there any diff

  • Oracle Golden Gate Adapters 12c

    We are evaluating OGG Java Adapter.  Where can we find Oracle GoldenGate for Java 12c software to download? Actualy Oraclle had published some version after 11.2.1.0.5? Regards!