 |
Support & downloads > |
 |
 |
 |
How to allocate large objects into Large Object Area on IBM SDK 1.4.2 SR1 and later
|
| | | Problem(Abstract) | | IBM® Sovereign 1.4.2 SDK SR1 and later (build date of 20050209 and later) supports the configuration of Large Object Area to reserve the Java™ heap for allocating large objects (>=64 KB). | | | | | | Resolving the problem | Use the -Xloratio command line option.
With this option specified, certain parts of the Java heap are reserved for large objects (>=64 KB). This part of the Java heap will never be used for small object allocation (<64 KB). Example:
This command reserves 20% of the active Java heap (not 20% of -Xmx but 20% of the current size of the Java heap) to the allocation of large objects (>= 64 KB) only. When an allocation request for an object not less than 64 KB arrives, the process first tries to allocate from the remaining 80% of the heap. If it is unable to allocate, it then tries to allocate in the exclusively reserved area for large objects.
-Xmx should be changed to make sure that you don't reduce the size of the small object area, by using the following formula: [New Xmx] = [Current Xmx] / (1 - [loratio])
For example, we need at least 1462 MB for -Xmx to use -Xloratio0.3 with current -Xmx1024 MB 1024 MB / (1 - 0.3) = 1462 MB When to use:
Generally, thorough analysis of the verbosegc trace is needed to decide whether to configure the -Xloratio. Use the following information as a general guideline: - If you see fragmentation of the Java heap because of large objects (>= 64 KB) and there is a significant number of allocation failures due to these objects, then you can enable Xloratio with 0.2 or 0.3.
- From the verbosegc if you see that 0.2 or 0.3 is being used up and the Java heap is still fragmented because of large objects, then consider increasing Xloratio to 0.4 or 0.5.
How to configure:
Add the -Xloratio to Generic JVM Arguments in administrative console: - On WebSphere® Application Server V6.0:
Servers > Application Servers > server_name > Java and Process Management > Process definition > Java Virtual Machine > Generic JVM Arguments - On WebSphere Application Server V5.0 and V5.1:
Servers > Application Servers > server_name > Process Definition > Java Virtual Machine > Generic JVM Arguments
IBM recommends that you reduce the size of large objects in your application. If not possible, use Xloratio. If Xloratio does not help, please contact IBM support for further assistance. | | | | | | | | Cross Reference information | | Segment | Product | Component | Platform | Version | Edition | | Application Servers | Runtimes for Java Technology | Java SDK | | | |
| | |
 |
| IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml. |
 |
 |
 |
| Please take a moment to complete this form to help us better serve you. |
 |
 |
 |
|
|
|
 |
 |
| Product categories: |
 |
| | Software |  |
| | Application Servers |  |
| | Distributed Application & Web Servers |  |
| | WebSphere Application Server |  |
| | Java SDK |  |
 |
| Operating system(s): |
| |
AIX, Linux, Windows
|
 |
| Software version: |
| |
5.1.1, 6.0, 6.0.1, 6.0.2, 6.1, 6.1.1, 7.0
|
 |
| Reference #: |
| |
1236509
|
 |
| IBM Group: |
| | Software Group |
 |
| Modified date: |
| | 2009-09-13 |
 |
|