64-bit JVM as 32-bit for mission-critical workloads?

I asked the same question in a different way, and the question was closed: https://stackoverflow.com/questions/7231460/java-64-bit-or-32-bit
This is my second attempt to get an objective answer (s).

We considered porting our product to 64-bit Java for those clients who push the boundaries of the 32-bit JVM server on Solaris (SPARC) and Linux (RHEL 5.x). Our director asked: "A few years ago, 64-bit was not quite there. How about now?"

  • For those customers who don’t push the 4 GB border, will using the 64-bit JVM have adverse performance implications? If so, how much? We create many objects. (we do not want to support 32-bit and 64-bit JVMs at the same time).

  • For those pushing the 4GB border, can we expect the JVM to be as stable as the 32-bit one?

    • Will performance be a problem? If so, how much? we create many objects.
    • What are the new ways to set up your GC?
    • Profilers: are they enough to profile 64-bit JVM applications?

UPDATE. To those who closed my previous question, I believe that NOW I understand your longing. At the same time, I believe that some of you have made some (incorrect) assumptions that I am lazy or a suit that has no idea. I will publish my results after my research. Thanks to everyone who gave me these pointers.

+5
source share
3 answers

64- Java , 32- JVM Solaris (SPARC) Linux (RHEL 5.x). : " , 64- . ?"

Sun 64- , Windows. Solaris 2.5 (1995 , Windows 95) 64- , . , SunOS (32-), , . Solaris 2.6 (1997) 64- . Java 1999 ( Solaris), 64-, .

1) , 4 , 64- JVM ? , ?

64- JVM . long alot, , 5-10% .

.

IMHO , . , . . (. )

( 32- 64- JVM ). , ) , . , . , . Java 6.

2) , 4 , , JVM , 32-?

64- 1999 , , 32- ( - )

? , ? .

, .

?

. . 32 , , 32- .

, , - Eden 8 , . GC. ( ;) 32- JVM.

: 64- JVM?

VisualVM - Java, AFAIK . YourKit , , , ( , , , , )


, . , , . 2x 10x . , , , , 3 .

64- 32- , , 5% -10%. , . , JVM, . , 64- JVM 32- 32 . , 64-, -XX:+UseCompressedOops ( ).


Java: 64-

32- 64- JVM Java:

, , , . 1000x . Java Serialization

GC.

4 ?

+2

, , " " 32- JVM.

, . 32- JVM Windows, RHEL, 64- JVM. , ( 32- AMD 32 ).

, - , 4GiB, . . VisualVM . GC, , , GC. , , (8GiB), , , GC , .

, JDK 7 GC, G1, , .

, , ( 32 64 32 64 ), . FYI, 64- JVM, , 64 , 4GiB ( , ).

+5

There are so many aspects of your question that depend on your application, that the experience of the “real world” with other people's applications is unlikely to tell you anything worthwhile with any degree of certainty.

My advice would be to stop wasting time (and ours) on what CAN, and just see what happens when you use a 64-bit JVM instead of a 32-bit one. You still have to get tested ...

+1
source

All Articles