comparison src/share/vm/services/memoryService.cpp @ 8827:42e370795a39

8010818: NPG: Remove metaspace memory pools Reviewed-by: mgerdin, stefank
author ehelin
date Wed, 27 Mar 2013 10:55:37 +0100
parents 338b3a9e29b5
children 71963b3f802a
comparison
equal deleted inserted replaced
8826:338b3a9e29b5 8827:42e370795a39
58 GrowableArray<MemoryPool*>* MemoryService::_pools_list = 58 GrowableArray<MemoryPool*>* MemoryService::_pools_list =
59 new (ResourceObj::C_HEAP, mtInternal) GrowableArray<MemoryPool*>(init_pools_list_size, true); 59 new (ResourceObj::C_HEAP, mtInternal) GrowableArray<MemoryPool*>(init_pools_list_size, true);
60 GrowableArray<MemoryManager*>* MemoryService::_managers_list = 60 GrowableArray<MemoryManager*>* MemoryService::_managers_list =
61 new (ResourceObj::C_HEAP, mtInternal) GrowableArray<MemoryManager*>(init_managers_list_size, true); 61 new (ResourceObj::C_HEAP, mtInternal) GrowableArray<MemoryManager*>(init_managers_list_size, true);
62 62
63 GCMemoryManager* MemoryService::_minor_gc_manager = NULL; 63 GCMemoryManager* MemoryService::_minor_gc_manager = NULL;
64 GCMemoryManager* MemoryService::_major_gc_manager = NULL; 64 GCMemoryManager* MemoryService::_major_gc_manager = NULL;
65 MemoryPool* MemoryService::_code_heap_pool = NULL; 65 MemoryPool* MemoryService::_code_heap_pool = NULL;
66 MemoryPool* MemoryService::_metaspace_pool = NULL;
67 MemoryPool* MemoryService::_class_metaspace_pool = NULL;
68 66
69 class GcThreadCountClosure: public ThreadClosure { 67 class GcThreadCountClosure: public ThreadClosure {
70 private: 68 private:
71 int _count; 69 int _count;
72 public: 70 public:
396 true /* support_usage_threshold */); 394 true /* support_usage_threshold */);
397 MemoryManager* mgr = MemoryManager::get_code_cache_memory_manager(); 395 MemoryManager* mgr = MemoryManager::get_code_cache_memory_manager();
398 mgr->add_pool(_code_heap_pool); 396 mgr->add_pool(_code_heap_pool);
399 397
400 _pools_list->append(_code_heap_pool); 398 _pools_list->append(_code_heap_pool);
401 _managers_list->append(mgr);
402 }
403
404 void MemoryService::add_metaspace_memory_pools() {
405 _metaspace_pool = new MetaspacePool();
406 _class_metaspace_pool = new ClassMetaspacePool();
407
408 MemoryManager* mgr = MemoryManager::get_metaspace_memory_manager();
409 mgr->add_pool(_metaspace_pool);
410 mgr->add_pool(_class_metaspace_pool);
411
412 _pools_list->append(_metaspace_pool);
413 _pools_list->append(_class_metaspace_pool);
414 _managers_list->append(mgr); 399 _managers_list->append(mgr);
415 } 400 }
416 401
417 MemoryManager* MemoryService::get_memory_manager(instanceHandle mh) { 402 MemoryManager* MemoryService::get_memory_manager(instanceHandle mh) {
418 for (int i = 0; i < _managers_list->length(); i++) { 403 for (int i = 0; i < _managers_list->length(); i++) {