ORMB - Huge Pages Not Used As Expected By Java 1.6

(Doc ID 2267715.1)

Last updated on MAY 24, 2017

Applies to:

Oracle Financial Services Revenue Management and Billing - Version 2.3.0.0.0 and later
Information in this document applies to any platform.

Goal

We are using Huge Pages to allocate memory for JVM threadpools, however after starting thread pools only 50% of huge pages is used by java as reported via /proc/meminfo. Below are 16 pools started with ~12GB per pool coming to 192GB total:

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2182 cissys 20 0 11.9g 1.5g 10m S 47.4 0.6 4:30.39 cobjrun64
2640 cissys 20 0 11.6g 1.5g 10m S 31.3 0.6 4:35.95 cobjrun64
2186 cissys 20 0 11.6g 1.5g 10m S 40.3 0.6 4:49.15 cobjrun64
2387 cissys 20 0 11.6g 1.5g 10m S 7.2 0.6 4:45.95 cobjrun64
2190 cissys 20 0 11.6g 1.4g 10m S 3.6 0.6 4:37.11 cobjrun64
2415 cissys 20 0 11.6g 1.4g 10m S 43.9 0.6 4:27.19 cobjrun64
2357 cissys 20 0 11.6g 1.4g 10m S 55.5 0.6 4:49.28 cobjrun64
2337 cissys 20 0 11.7g 1.4g 10m S 95.8 0.6 4:39.06 cobjrun64
2474 cissys 20 0 11.7g 1.4g 10m S 26.0 0.6 4:59.04 cobjrun64
2452 cissys 20 0 11.8g 1.4g 10m S 42.1 0.6 5:13.36 cobjrun64
2299 cissys 20 0 11.7g 1.4g 10m S 113.7 0.5 5:09.28 cobjrun64
2178 cissys 20 0 11.7g 1.4g 10m S 2.7 0.5 4:36.97 cobjrun64
2336 cissys 20 0 11.6g 1.4g 10m S 21.5 0.5 4:46.39 cobjrun64
2272 cissys 20 0 11.6g 1.3g 10m S 20.6 0.5 4:41.17 cobjrun64
2175 cissys 20 0 11.5g 1.2g 10m S 42.1 0.5 4:37.35 cobjrun64
2347 cissys 20 0 11.6g 1.2g 10m S 51.9 0.5 4:49.66 cobjrun64

There are 114944 huge pages are configured, but only 60K are used (reserved):
$ cat /proc/meminfo | grep -i huge
HugePages_Total: 114944
HugePages_Free: 79096
HugePages_Rsvd: 60938
HugePages_Surp: 0
Hugepagesize: 2048 kB

Why is this and how to fix this issue?
 

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms