My application doesn't explicitly intern anything, though our libraries
might. However, when running jmap as you suggested no interned strings are
reported.
And no. Full GC never occurred in the 2 or so days we ran G1 before the OS
killed our proc due to system memory exhaustion.

Here is the output of jmap:

JVM version is 25.45-b02

using thread-local object allocation.

Garbage-First (G1) GC with 13 thread(s)

Heap Configuration:

   MinHeapFreeRatio         = 40

   MaxHeapFreeRatio         = 70

   MaxHeapSize              = 17179869184 (16384.0MB)

   NewSize                  = 1363144 (1.2999954223632812MB)

   MaxNewSize               = 13740539904 (13104.0MB)

   OldSize                  = 5452592 (5.1999969482421875MB)

   NewRatio                 = 2

   SurvivorRatio            = 8

   MetaspaceSize            = 21807104 (20.796875MB)

   CompressedClassSpaceSize = 1073741824 (1024.0MB)

   MaxMetaspaceSize         = 1073741824 (1024.0MB)

   G1HeapRegionSize         = 8388608 (8.0MB)


Heap Usage:

G1 Heap:

   regions  = 2048

   capacity = 17179869184 (16384.0MB)

   used     = 7899518456 (7533.5678634643555MB)

   free     = 9280350728 (8850.432136535645MB)

   45.98124916665256% used

G1 Young Generation:

Eden Space:

   regions  = 518

   capacity = 7700742144 (7344.0MB)

   used     = 4345298944 (4144.0MB)

   free     = 3355443200 (3200.0MB)

   56.42701525054466% used

Survivor Space:

   regions  = 58

   capacity = 486539264 (464.0MB)

   used     = 486539264 (464.0MB)

   free     = 0 (0.0MB)

   100.0% used

G1 Old Generation:

   regions  = 367

   capacity = 8992587776 (8576.0MB)

   used     = 3067680248 (2925.5678634643555MB)

   free     = 5924907528 (5650.4321365356445MB)

   34.11343124375414% used

On Wed, Feb 22, 2017 at 11:04 AM, yu.zh...@oracle.com <yu.zh...@oracle.com>
wrote:

> Will,
>
> Does your application generate a lot of interned string?
>
> Another way to confirm is with jmap -heap <pid> 'interned Stings' should
> be printed. Did full gc happen during the run?
>
> Thanks
>
> Jenny
>
> On 02/21/2017 10:52 AM, Will Bertelsen wrote:
>
> Hi All,
>
> I've been experimenting with G1 in production and have noticed a large
> native memory leak that eventually exhausts all memory on the system. I ran
> it overnight with NMT enabled and this was the biggest offender:
>
> [0x00007f86c31cf205] Hashtable<oopDesc*, (MemoryType)9>::new_entry(unsigned
> int, oopDesc*)+0x165
> [0x00007f86c35dd263] StringTable::basic_add(int, Handle, unsigned short*,
> int, unsigned int, Thread*)+0xd3
> [0x00007f86c35dd452] StringTable::intern(Handle, unsigned short*, int,
> Thread*)+0x182
> [0x00007f86c35dd921] StringTable::intern(oopDesc*, Thread*)+0x131
>                              (malloc=2628520KB +2601784KB #328565 +325223)
>
> Has anyone seen this before?
>
> Here is my java version and gc settings:
>
> java version "1.8.0_45"
> Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
> Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
>
> -Xmx16384M
> -Xms16384M
> -XX:+AggressiveOpts
> -XX:+UnlockExperimentalVMOptions
>
> -XX:+UseG1GC
> -XX:G1HeapRegionSize=8M
> -XX:G1NewSizePercent=20
> -XX:G1MaxNewSizePercent=80
>
> -XX:MaxGCPauseMillis=250
> -XX:MaxMetaspaceSize=1G
>
>
> _______________________________________________
> hotspot-gc-use mailing 
> listhotspot-gc-...@openjdk.java.nethttp://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use
>
>
>
_______________________________________________
hotspot-gc-use mailing list
hotspot-gc-use@openjdk.java.net
http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use

Reply via email to