From dawn2004 at gmail.com Tue Mar 1 00:32:26 2016 From: dawn2004 at gmail.com (Du Li) Date: Mon, 29 Feb 2016 16:32:26 -0800 Subject: Questions regrading metaspace Message-ID: Hi guys, I have a few questions regarding metaspace in hotspot. 1. Can an object in metaspace reference to an object in java heap? 2. If 1. is yes, how does GC handle such references when deciding the liveness of an object in java heap? Thanks. Du -------------- next part -------------- An HTML attachment was scrubbed... URL: From rednaxelafx at gmail.com Tue Mar 1 02:25:18 2016 From: rednaxelafx at gmail.com (Krystal Mok) Date: Mon, 29 Feb 2016 18:25:18 -0800 Subject: Questions regrading metaspace In-Reply-To: References: Message-ID: Hi Du, 1. Yes, in various places. e.g. the ClassLoaderData object itself, the Dependencies arrays, and the Klasses. 2. Please refer to [1]: // ClassLoaderData are stored in the runtime representation of classes and the // system dictionary, are roots of garbage collection, and provides iterators // for root tracing and other GC operations. You might want to read the source code around from process_roots() -> ClassLoaderDataGraph::roots_cld_do() and then down to ClassLoaderData::oops_do()/classes_do(). [1]: http://hg.openjdk.java.net/jdk9/jdk9/hotspot/file/0e6f2f47479c/src/share/vm/classfile/classLoaderData.hpp#l48 - Kris On Mon, Feb 29, 2016 at 4:32 PM, Du Li wrote: > Hi guys, > > I have a few questions regarding metaspace in hotspot. > > 1. Can an object in metaspace reference to an object in java heap? > 2. If 1. is yes, how does GC handle such references when deciding the > liveness of an object in java heap? > > Thanks. > > Du > > _______________________________________________ > hotspot-gc-use mailing list > hotspot-gc-use at openjdk.java.net > http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dawn2004 at gmail.com Wed Mar 2 19:52:58 2016 From: dawn2004 at gmail.com (Du Li) Date: Wed, 2 Mar 2016 11:52:58 -0800 Subject: Questions regrading metaspace In-Reply-To: References: Message-ID: Thanks a lot, Krystal! It's very helpful. Du On Mon, Feb 29, 2016 at 6:25 PM, Krystal Mok wrote: > Hi Du, > > 1. Yes, in various places. e.g. the ClassLoaderData object itself, the > Dependencies arrays, and the Klasses. > > 2. Please refer to [1]: > > // ClassLoaderData are stored in the runtime representation of classes and > the > // system dictionary, are roots of garbage collection, and provides > iterators > // for root tracing and other GC operations. > > You might want to read the source code around from process_roots() -> > ClassLoaderDataGraph::roots_cld_do() and then down to > ClassLoaderData::oops_do()/classes_do(). > > [1]: > http://hg.openjdk.java.net/jdk9/jdk9/hotspot/file/0e6f2f47479c/src/share/vm/classfile/classLoaderData.hpp#l48 > > - Kris > > On Mon, Feb 29, 2016 at 4:32 PM, Du Li wrote: > >> Hi guys, >> >> I have a few questions regarding metaspace in hotspot. >> >> 1. Can an object in metaspace reference to an object in java heap? >> 2. If 1. is yes, how does GC handle such references when deciding the >> liveness of an object in java heap? >> >> Thanks. >> >> Du >> >> _______________________________________________ >> hotspot-gc-use mailing list >> hotspot-gc-use at openjdk.java.net >> http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Shane.Cox at theice.com Fri Mar 4 18:33:07 2016 From: Shane.Cox at theice.com (Shane Cox) Date: Fri, 4 Mar 2016 18:33:07 +0000 Subject: Unexplained period of increasing ParNew pause and User CPU time Message-ID: <850015BD8A592E4F83E902ABAA52785770D4983D@at-bp-embx-02.theice.com> We are running Java 8_45 on Linux. We are seeing period of time when ParNew pause time steadily increases from 5ms to over 1 second. As the pause time increases, User CPU time increases in proportion. Then, just as suddenly as the problem started, it ends and pause time returns to 5ms. GC log attached. The issue begins around 2016-02-28T17:05 and ends at 2016-02-28T19:33. During that span of nearly 2.5 hours, ParNew pause time steadily increased from 5ms to 1.47 seconds. CPU utilization ranged from 95-99% idle during this period. Percent free memory did not change during this period. Any ideas what might be causing this? ________________________________ This message may contain confidential information and is intended for specific recipients unless explicitly noted otherwise. If you have reason to believe you are not an intended recipient of this message, please delete it and notify the sender. This message may not represent the opinion of Intercontinental Exchange, Inc. (ICE), its subsidiaries or affiliates, and does not constitute a contract or guarantee. Unencrypted electronic mail is not secure and the recipient of this message is expected to provide safeguards from viruses and pursue alternate means of communication where privacy or a binding message is desired. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: gc.log.gz Type: application/x-gzip Size: 56370 bytes Desc: gc.log.gz URL: From jon.masamitsu at oracle.com Fri Mar 4 21:21:39 2016 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Fri, 4 Mar 2016 13:21:39 -0800 Subject: Unexplained period of increasing ParNew pause and User CPU time In-Reply-To: <850015BD8A592E4F83E902ABAA52785770D4983D@at-bp-embx-02.theice.com> References: <850015BD8A592E4F83E902ABAA52785770D4983D@at-bp-embx-02.theice.com> Message-ID: <56D9FC63.5020408@oracle.com> Shane, You may be seeing 8081629 CMS split_block() does not correctly fix up block-offset-table for large blocks https://bugs.openjdk.java.net/browse/JDK-8081629 If you can try an early release version of jdk9, this bug is fixed there. Jon On 03/04/2016 10:33 AM, Shane Cox wrote: > > We are running Java 8_45 on Linux. We are seeing period of time when > ParNew pause time steadily increases from 5ms to over 1 second. As > the pause time increases, User CPU time increases in proportion. > Then, just as suddenly as the problem started, it ends and pause time > returns to 5ms. > > GC log attached. The issue begins around 2016-02-28T17:05 and ends at > 2016-02-28T19:33. During that span of nearly 2.5 hours, ParNew pause > time steadily increased from 5ms to 1.47 seconds. CPU utilization > ranged from 95-99% idle during this period. Percent free memory did > not change during this period. > > Any ideas what might be causing this? > > > ------------------------------------------------------------------------ > > This message may contain confidential information and is intended for > specific recipients unless explicitly noted otherwise. If you have > reason to believe you are not an intended recipient of this message, > please delete it and notify the sender. This message may not represent > the opinion of Intercontinental Exchange, Inc. (ICE), its subsidiaries > or affiliates, and does not constitute a contract or guarantee. > Unencrypted electronic mail is not secure and the recipient of this > message is expected to provide safeguards from viruses and pursue > alternate means of communication where privacy or a binding message is > desired. > > > _______________________________________________ > hotspot-gc-use mailing list > hotspot-gc-use at openjdk.java.net > http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use -------------- next part -------------- An HTML attachment was scrubbed... URL: From joyxiong at yahoo.com Wed Mar 9 04:47:56 2016 From: joyxiong at yahoo.com (Joy Xiong) Date: Wed, 9 Mar 2016 04:47:56 +0000 (UTC) Subject: Regarding Native Memory Tracking References: <1501295068.6377503.1457498876659.JavaMail.yahoo.ref@mail.yahoo.com> Message-ID: <1501295068.6377503.1457498876659.JavaMail.yahoo@mail.yahoo.com> Hi, I have questions on native memory tracking (-XX:NativeMemoryTracking=detail):1. When the flag is enabled, does it track memory that is not allocated by JVM code??I am using?build 1.8.0_60-b272. If an app uses direct byte buffer, which category does direct buffer go to? I saw native memory tracking prints out category like GC, ThreadStack, Internal and etc. thanks,-Joy -------------- next part -------------- An HTML attachment was scrubbed... URL: From dillippattnaik09 at gmail.com Wed Mar 23 16:25:40 2016 From: dillippattnaik09 at gmail.com (Dillip Pattnaik) Date: Wed, 23 Mar 2016 11:25:40 -0500 Subject: methoddata grows in metaspace jdk 1.8.0_40 64bit Message-ID: hi, We were running an application in java 7 with lot of reflection and custom class loader. The perm gen normally reaches a high threshold and stabilizes. But once we moved to 1.8.0_40 64 bit recently, the metaspace keeps growing. After using gc class_stat we found that the number of classes loaded are constant. But the MethodData per class keeps growing in 20MBs. Could you please advise why the method data is growing and if there is a way to debug it more and find out what is causing it? -------------- next part -------------- An HTML attachment was scrubbed... URL: From jon.masamitsu at oracle.com Thu Mar 24 21:32:22 2016 From: jon.masamitsu at oracle.com (Jon Masamitsu) Date: Thu, 24 Mar 2016 14:32:22 -0700 Subject: methoddata grows in metaspace jdk 1.8.0_40 64bit In-Reply-To: References: Message-ID: <56F45CE6.9040409@oracle.com> Can you run your test with the latest jdk8 and the latest jdk9? And does > But the MethodData per class keeps growing in 20MBs. mean that the amount of MethodData continues to grow as long as the application is running? Jon On 3/23/2016 9:25 AM, Dillip Pattnaik wrote: > hi, > We were running an application in java 7 with lot of reflection and > custom class loader. The perm gen normally reaches a high threshold > and stabilizes. But once we moved to 1.8.0_40 64 bit recently, the > metaspace keeps growing. After using gc class_stat we found that the > number of classes loaded are constant. But the MethodData per class > keeps growing in 20MBs. Could you please advise why the method data is > growing and if there is a way to debug it more and find out what is > causing it? > > > _______________________________________________ > hotspot-gc-use mailing list > hotspot-gc-use at openjdk.java.net > http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use -------------- next part -------------- An HTML attachment was scrubbed... URL: