Duplicate :
|
A DESCRIPTION OF THE REQUEST : Limited api/jvm for utilizing capability of 64 bit machines with large amounts of RAM.( >32Gig of RAM ). The below will not work because the arguement for array allocation is limited to a 32 bit integer. long size = 10000000000l; // ~10Gig RAM as a long byte bigarray [ ] = new byte[size]; JUSTIFICATION : Many fields of computing routinely allocate huge amounts of RAM. {weather, seismic, dna, data mining, astronomy, and more } Large memory on 64 bit machines is done both for computation and mapped file IO. The memory allocations can be done in C/C++ without any problem. We are unable to use Java for a various projects because of this. EXPECTED VERSUS ACTUAL BEHAVIOR : EXPECTED - Ability to allocated RAM using longs and NIO bytebuffer support on 64 bit platforms. long size = 10000000000l; // ~10Gig RAM as a long byte bigarray [ ] = new byte[size]; ACTUAL - Error trying to use 'long' to allocate memory. Eventhough there is plenty of memory available. ---------- BEGIN SOURCE ---------- long size = 10000000000l; // ~10Gig RAM as a long byte bigarray [ ] = new byte[size]; ---------- END SOURCE ---------- CUSTOMER SUBMITTED WORKAROUND : We are using C/C++ instead. ###@###.### 2005-06-30 17:35:04 GMT