Hi Chris, The performance degregation for 64 bit versus 32 bit has been the subject of much concern in the java community.
Here is the number I mentioned straight from Oracle itself: http://www.oracle.com/technetwork/java/hotspotfaq-138619.html What are the performance characteristics of 64-bit versus 32-bit VMs? Generally, the benefits of being able to address larger amounts of memory come with a small performance loss in 64-bit VMs versus running the same application on a 32-bit VM. This is due to the fact that every native pointer in the system takes up 8 bytes instead of 4. The loading of this extra data has an impact on memory usage which translates to slightly slower execution depending on how many pointers get loaded during the execution of your Java program. The good news is that with AMD64 and EM64T platforms running in 64-bit mode, the Java VM gets some additional registers which it can use to generate more efficient native instruction sequences. These extra registers increase performance to the point where there is often no performance loss at all when comparing 32 to 64-bit execution speed. The performance difference comparing an application running on a 64-bit platform versus a 32-bit platform on SPARC is on the order of 10-20% degradation when you move to a 64-bit VM. On AMD64 and EM64T platforms this difference ranges from 0-15% depending on the amount of pointer accessing your application performs. If you google using the keywords: java 64-bit vs 32-bit performance You will find alot of discussion about this. Regards, -Tony ----- Original Message ---- From: Christopher Schultz <ch...@christopherschultz.net> To: Tomcat Users List <users@tomcat.apache.org> Sent: Tue, March 1, 2011 8:29:11 AM Subject: Re: [OT] IIS7/isapi/tomcat performance -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Tony, On 2/28/2011 2:57 PM, Tony Anecito wrote: > Since the memory pointers are larger you may need to increase your heap size >but > > you can compress the address pointers. +1 > Also, if you use JNI and it is 32-bit then you will have unexpected issues > same > > thing with any native libs your try to use. +1 > Generally it will be up to 20% slower due to the pointers. Can you explain that claim? Unless the OP is using compressed pointers (which will require a decode in order to dereference), why would the performance drop when using 64-bit pointers instead of 32-bit pointers. Presumably, the CPU has 64-bit (or bigger) registers and can handle 64-bit numbers just as fast as 32-bit numbers. Or do modern CPUs run in g a32-bit mode where the hardware doesn't bother to add-out to the 33+ bits? - -chris -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk1tEMcACgkQ9CaO5/Lv0PBa8ACgmRjggPsYHma8tShCNK2WfOJd Qv8AoJ0KGEVwKQRDfSvwAvoF2Is5oHoW =Anih -----END PGP SIGNATURE----- --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org