JRocket JVM jrcmd显示了巨大的"其他"内存大小

时间:2015-09-04 22:05:17

标签: java jvm jvm-hotspot

我的应用程序占用了大量的内存,jrocket jrcmd告诉我它有一个巨大的"其他"记忆部分。谁能给我一些关于它是什么的想法?

https://community.oracle.com/thread/3514021下面的链接,它似乎与JVM本身有关。我可以调整一些JVM选项以降低此值吗?

/usr/java/jrockit-jdk1.6.0_45-R28.2.7-4.1.0/bin>./jrcmd 27074      print_memusage displaymap 
27074:
Total mapped                  8701648KB           (reserved=1563316KB)
-              Java heap      1048576KB           (reserved=0KB)
-              GC tables        35084KB
-          Thread stacks       521140KB           (#threads=226)
-          Compiled code      1048576KB           (used=6802KB)
-               Internal         1672KB
-                     OS       745728KB
-                  Other      5236872KB
-            Classblocks         3840KB           (malloced=0KB #0)
-        Java class data        59136KB           (malloced=0KB #0 in 11063 classes)
- Native memory tracking         1024KB           (malloced=512KB #8)

1 个答案:

答案 0 :(得分:0)

我会看

less /proc/27074/maps

分解每个内存映射。从这里你可以找出这个额外记忆的去向。如果JVM不知道它是什么,它更有可能成为您使用的本机库。

另外我会考虑将您的Java版本升级到版本8更新60.如果这是一个JVM错误,您可能会看到这是否已修复(您可能无法升级生产但是这样可能会告诉你一些关于内存使用的地方)