8036696: Add metaspace gc threshold to metaspace summary trace event

Fri, 21 Mar 2014 10:16:35 +0100

author
ehelin
date
Fri, 21 Mar 2014 10:16:35 +0100
changeset 6416
537c8e21b118
parent 6412
6e7e363c5a8f
child 6417
daef39043d2c

8036696: Add metaspace gc threshold to metaspace summary trace event
Reviewed-by: jmasa, stefank, mgerdin

src/share/vm/gc_implementation/shared/gcHeapSummary.hpp file | annotate | diff | comparison | revisions
src/share/vm/gc_implementation/shared/gcTraceSend.cpp file | annotate | diff | comparison | revisions
src/share/vm/gc_interface/collectedHeap.cpp file | annotate | diff | comparison | revisions
src/share/vm/trace/trace.xml file | annotate | diff | comparison | revisions
     1.1 --- a/src/share/vm/gc_implementation/shared/gcHeapSummary.hpp	Mon Mar 24 09:14:14 2014 -0700
     1.2 +++ b/src/share/vm/gc_implementation/shared/gcHeapSummary.hpp	Fri Mar 21 10:16:35 2014 +0100
     1.3 @@ -125,15 +125,17 @@
     1.4  };
     1.5  
     1.6  class MetaspaceSummary : public StackObj {
     1.7 +  size_t _capacity_until_GC;
     1.8    MetaspaceSizes _meta_space;
     1.9    MetaspaceSizes _data_space;
    1.10    MetaspaceSizes _class_space;
    1.11  
    1.12   public:
    1.13 -  MetaspaceSummary() : _meta_space(), _data_space(), _class_space() {}
    1.14 -  MetaspaceSummary(const MetaspaceSizes& meta_space, const MetaspaceSizes& data_space, const MetaspaceSizes& class_space) :
    1.15 -       _meta_space(meta_space), _data_space(data_space), _class_space(class_space) { }
    1.16 +  MetaspaceSummary() : _capacity_until_GC(0), _meta_space(), _data_space(), _class_space() {}
    1.17 +  MetaspaceSummary(size_t capacity_until_GC, const MetaspaceSizes& meta_space, const MetaspaceSizes& data_space, const MetaspaceSizes& class_space) :
    1.18 +       _capacity_until_GC(capacity_until_GC), _meta_space(meta_space), _data_space(data_space), _class_space(class_space) { }
    1.19  
    1.20 +  size_t capacity_until_GC() const { return _capacity_until_GC; }
    1.21    const MetaspaceSizes& meta_space() const { return _meta_space; }
    1.22    const MetaspaceSizes& data_space() const { return _data_space; }
    1.23    const MetaspaceSizes& class_space() const { return _class_space; }
     2.1 --- a/src/share/vm/gc_implementation/shared/gcTraceSend.cpp	Mon Mar 24 09:14:14 2014 -0700
     2.2 +++ b/src/share/vm/gc_implementation/shared/gcTraceSend.cpp	Fri Mar 21 10:16:35 2014 +0100
     2.3 @@ -246,6 +246,7 @@
     2.4    if (e.should_commit()) {
     2.5      e.set_gcId(_shared_gc_info.id());
     2.6      e.set_when((u1) when);
     2.7 +    e.set_gcThreshold(meta_space_summary.capacity_until_GC());
     2.8      e.set_metaspace(to_trace_struct(meta_space_summary.meta_space()));
     2.9      e.set_dataSpace(to_trace_struct(meta_space_summary.data_space()));
    2.10      e.set_classSpace(to_trace_struct(meta_space_summary.class_space()));
     3.1 --- a/src/share/vm/gc_interface/collectedHeap.cpp	Mon Mar 24 09:14:14 2014 -0700
     3.2 +++ b/src/share/vm/gc_interface/collectedHeap.cpp	Fri Mar 21 10:16:35 2014 +0100
     3.3 @@ -97,7 +97,7 @@
     3.4        MetaspaceAux::allocated_used_bytes(Metaspace::ClassType),
     3.5        MetaspaceAux::reserved_bytes(Metaspace::ClassType));
     3.6  
     3.7 -  return MetaspaceSummary(meta_space, data_space, class_space);
     3.8 +  return MetaspaceSummary(MetaspaceGC::capacity_until_GC(), meta_space, data_space, class_space);
     3.9  }
    3.10  
    3.11  void CollectedHeap::print_heap_before_gc() {
     4.1 --- a/src/share/vm/trace/trace.xml	Mon Mar 24 09:14:14 2014 -0700
     4.2 +++ b/src/share/vm/trace/trace.xml	Fri Mar 21 10:16:35 2014 +0100
     4.3 @@ -193,6 +193,7 @@
     4.4      <event id="MetaspaceSummary" path="vm/gc/heap/metaspace_summary" label="Metaspace Summary" is_instant="true">
     4.5        <value type="UINT" field="gcId" label="GC ID" relation="GC_ID"/>
     4.6        <value type="GCWHEN" field="when" label="When" />
     4.7 +      <value type="BYTES64" field="gcThreshold" label="GC Threshold" />
     4.8        <structvalue type="MetaspaceSizes" field="metaspace" label="Total"/>
     4.9        <structvalue type="MetaspaceSizes" field="dataSpace" label="Data"/>
    4.10        <structvalue type="MetaspaceSizes" field="classSpace" label="Class"/>

mercurial