Как уменьшить размер gc(использование данных GC, например, карточным столом)
Я запускаю программу на Java 8. Аргументы VM ниже:
-Xms9g -Xmx9g -Xss512K -XX:MaxMetaspaceSize=256m -XX:CompressedClassSpaceSize=64m
Через некоторое время я запускаю jcmd VM.native_memory, чтобы получить информацию ниже.
Total: reserved=10526823KB +128926KB, committed=10254095KB +166202KB
- Java Heap (reserved=9437184KB, committed=9437184KB)
(mmap: reserved=9437184KB, committed=9437184KB)
- Class (reserved=132823KB +21389KB, committed=75479KB +23437KB)
(classes #11001 +2397)
(malloc=1751KB +909KB #23016 +14739)
(mmap: reserved=131072KB +20480KB, committed=73728KB +22528KB)
- Thread (reserved=123628KB +8328KB, committed=123628KB +8328KB)
(thread #211 +16)
(stack: reserved=122696KB +8256KB, committed=122696KB +8256KB)
(malloc=686KB +53KB #1064 +80)
(arena=246KB +19 #420 +32)
- Code (reserved=259650KB +7972KB, committed=62702KB +43204KB)
(malloc=10050KB +7972KB #13296 +9779)
(mmap: reserved=249600KB, committed=52652KB +35232KB)
- GC (reserved=457420KB +44144KB, committed=457420KB +44144KB)
(malloc=74444KB +44144KB #76283 +57642)
(mmap: reserved=382976KB, committed=382976KB)
- Compiler (reserved=1040KB +246KB, committed=1040KB +246KB)
(malloc=910KB +246KB #1726 +836)
(arena=131KB #3)
- Internal (reserved=76520KB +43829KB, committed=76516KB +43825KB)
(malloc=76484KB +43825KB #63650 +48300)
(mmap: reserved=36KB +4KB, committed=32KB)
- Symbol (reserved=14867KB +2670KB, committed=14867KB +2670KB)
(malloc=13069KB +2478KB #121314 +18664)
(arena=1798KB +192 #1)
- Native Memory Tracking (reserved=5057KB +2457KB, committed=5057KB +2457KB)
(malloc=288KB +92KB #4368 +1350)
(tracking overhead=4769KB +2365KB)
- Arena Chunk (reserved=202KB -2110KB, committed=202KB -2110KB)
(malloc=202KB -2110KB)
- Unknown (reserved=18432KB, committed=0KB)
(mmap: reserved=18432KB, committed=0KB)
gc - это данные, используемые GC, такие как таблица таблиц. Я хочу ограничить размер gc, так что вы можете выбрать?