mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-22 03:54:33 +02:00
6995781: Native Memory Tracking (Phase 1)
7151532: DCmd for hotspot native memory tracking Implementation of native memory tracking phase 1, which tracks VM native memory usage, and related DCmd Reviewed-by: acorn, coleenp, fparain
This commit is contained in:
parent
8e42425c92
commit
a39b17624a
315 changed files with 7245 additions and 1477 deletions
|
@ -81,7 +81,7 @@ PerfData::PerfData(CounterNS ns, const char* name, Units u, Variability v)
|
|||
|
||||
const char* prefix = PerfDataManager::ns_to_string(ns);
|
||||
|
||||
_name = NEW_C_HEAP_ARRAY(char, strlen(name) + strlen(prefix) + 2);
|
||||
_name = NEW_C_HEAP_ARRAY(char, strlen(name) + strlen(prefix) + 2, mtInternal);
|
||||
assert(_name != NULL && strlen(name) != 0, "invalid name");
|
||||
|
||||
if (ns == NULL_NS) {
|
||||
|
@ -111,10 +111,10 @@ PerfData::PerfData(CounterNS ns, const char* name, Units u, Variability v)
|
|||
|
||||
PerfData::~PerfData() {
|
||||
if (_name != NULL) {
|
||||
FREE_C_HEAP_ARRAY(char, _name);
|
||||
FREE_C_HEAP_ARRAY(char, _name, mtInternal);
|
||||
}
|
||||
if (is_on_c_heap()) {
|
||||
FREE_C_HEAP_ARRAY(PerfDataEntry, _pdep);
|
||||
FREE_C_HEAP_ARRAY(PerfDataEntry, _pdep, mtInternal);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -137,7 +137,7 @@ void PerfData::create_entry(BasicType dtype, size_t dsize, size_t vlen) {
|
|||
if (psmp == NULL) {
|
||||
// out of PerfMemory memory resources. allocate on the C heap
|
||||
// to avoid vm termination.
|
||||
psmp = NEW_C_HEAP_ARRAY(char, size);
|
||||
psmp = NEW_C_HEAP_ARRAY(char, size, mtInternal);
|
||||
_on_c_heap = true;
|
||||
}
|
||||
|
||||
|
@ -559,12 +559,12 @@ PerfLongCounter* PerfDataManager::create_long_counter(CounterNS ns,
|
|||
|
||||
PerfDataList::PerfDataList(int length) {
|
||||
|
||||
_set = new(ResourceObj::C_HEAP) PerfDataArray(length, true);
|
||||
_set = new(ResourceObj::C_HEAP, mtInternal) PerfDataArray(length, true);
|
||||
}
|
||||
|
||||
PerfDataList::PerfDataList(PerfDataList* p) {
|
||||
|
||||
_set = new(ResourceObj::C_HEAP) PerfDataArray(p->length(), true);
|
||||
_set = new(ResourceObj::C_HEAP, mtInternal) PerfDataArray(p->length(), true);
|
||||
|
||||
_set->appendAll(p->get_impl());
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue