Data Structures | |
struct | CmiMemUsageStruct |
Typedefs | |
typedef CMK_TYPEDEF_UINT8(* | CmiMemUsageFn )(void) |
Functions | |
void | initialize_memory_wrapper (void) |
void * | initialize_memory_wrapper_calloc (size_t nelem, size_t size) |
void * | initialize_memory_wrapper_malloc (size_t size) |
void * | initialize_memory_wrapper_realloc (void *ptr, size_t size) |
void * | initialize_memory_wrapper_memalign (size_t align, size_t size) |
int | initialize_memory_wrapper_posix_memalign (void **memptr, size_t align, size_t size) |
void * | initialize_memory_wrapper_aligned_alloc (size_t align, size_t size) |
void * | initialize_memory_wrapper_valloc (size_t size) |
void * | initialize_memory_wrapper_pvalloc (size_t size) |
void | initialize_memory_wrapper_free (void *ptr) |
void | initialize_memory_wrapper_cfree (void *ptr) |
static void * | fake_malloc (size_t size) |
static void * | fake_calloc (size_t nelem, size_t size) |
static void | fake_free (void *ptr) |
int | CmiMemoryIs (int flag) |
void | CmiOutOfMemoryInit (void) |
void | CmiOutOfMemory (int nBytes) |
static void * | meta_malloc (size_t) |
static void * | meta_realloc (void *, size_t) |
static void * | meta_memalign (size_t, size_t) |
static void | meta_free (void *) |
static void * | meta_malloc_hook (size_t s, const void *c) |
static void * | meta_realloc_hook (void *p, size_t s, const void *c) |
static void * | meta_memalign_hook (size_t s1, size_t s2, const void *c) |
static void | meta_free_hook (void *p, const void *c) |
static void | my_init_hook (void) |
void * | malloc (size_t size) CMK_THROW |
void | free (void *ptr) CMK_THROW |
void * | calloc (size_t nelem, size_t size) CMK_THROW |
void | cfree (void *ptr) CMK_THROW |
void * | realloc (void *ptr, size_t size) CMK_THROW |
CLINKAGE void * | memalign (size_t align, size_t size) CMK_THROW |
CLINKAGE int | posix_memalign (void **outptr, size_t align, size_t size) CMK_THROW |
CLINKAGE void * | aligned_alloc (size_t align, size_t size) CMK_THROW |
void * | valloc (size_t size) CMK_THROW |
CLINKAGE void * | pvalloc (size_t size) CMK_THROW |
void | CmiMemoryInit (char **argv) |
CLINKAGE void * | malloc_reentrant (size_t) |
CLINKAGE void | free_reentrant (void *) |
static INLINE CMK_TYPEDEF_UINT8 | MemusageMstats (void) |
static INLINE CMK_TYPEDEF_UINT8 | MemusageSbrk (void) |
static INLINE CMK_TYPEDEF_UINT8 | MemusageProcSelfStat (void) |
static INLINE CMK_TYPEDEF_UINT8 | MemusageMallinfo (void) |
static INLINE CMK_TYPEDEF_UINT8 | MemusagePS (void) |
static INLINE CMK_TYPEDEF_UINT8 | MemusageWindows (void) |
static INLINE CMK_TYPEDEF_UINT8 | MemusageBGQ (void) |
CMK_TYPEDEF_UINT8 | CmiMemoryUsage (void) |
Return number of bytes currently allocated, if possible. | |
const char * | CmiMemoryUsageReporter (void) |
CMK_TYPEDEF_UINT8 | CmiMaxMemoryUsageR (void) |
CMK_TYPEDEF_UINT8 | CmiMaxMemoryUsage (void) |
Return number of maximum number of bytes allocated since the last call to CmiResetMaxMemory(), if possible. | |
void | CmiResetMaxMemory (void) |
Reset the mechanism that records the highest seen (high watermark) memory usage. | |
CMK_TYPEDEF_UINT8 | CmiMinMemoryUsage (void) |
void | CmiResetMinMemory (void) |
static void | meta_init (char **argv) |
static void * | meta_calloc (size_t nelem, size_t size) |
static void | meta_cfree (void *mem) |
static int | meta_posix_memalign (void **outptr, size_t align, size_t size) |
static void * | meta_aligned_alloc (size_t align, size_t size) |
static void * | meta_valloc (size_t size) |
static void * | meta_pvalloc (size_t size) |
CLINKAGE void * | malloc_nomigrate (size_t) |
CLINKAGE void | free_nomigrate (void *) |
CmiIsomallocBlockList * | CmiIsomallocBlockListActivate (CmiIsomallocBlockList *l) |
CmiIsomallocBlockList * | CmiIsomallocBlockListCurrent (void) |
void | CmiEnableIsomalloc (void) |
void | CmiDisableIsomalloc (void) |
void | CmiMemoryMark (void) |
void | CmiMemoryMarkBlock (void *blk) |
void | CmiMemorySweep (const char *where) |
void | CmiMemoryCheck (void) |
void | memory_preallocate_hack (void) |
void | CpdSetInitializeMemory (int v) |
size_t | cpd_memory_length (void *lenParam) |
Returns the number of total blocks of memory allocated. | |
void | cpd_memory_pup (void *itemParam, pup_er p, CpdListItemsRequest *req) |
void | cpd_memory_leak (void *itemParam, pup_er p, CpdListItemsRequest *req) |
void | check_memory_leaks (LeakSearchInfo *i) |
size_t | cpd_memory_getLength (void *lenParam) |
void | cpd_memory_get (void *itemParam, pup_er p, CpdListItemsRequest *req) |
void | CpdMemoryMarkClean (char *msg) |
void | setProtection (char *mem, char *ptr, int len, int flag) |
void | setMemoryTypeChare (void *ptr) |
void | setMemoryTypeMessage (void *ptr) |
void | CpdSystemEnter (void) |
void | CpdSystemExit (void) |
void | CpdResetMemory (void) |
void | CpdCheckMemory (void) |
int | get_memory_allocated_user_total (void) |
void * | MemoryToSlot (void *ptr) |
int | Slot_ChareOwner (void *s) |
int | Slot_AllocatedSize (void *s) |
int | Slot_StackTrace (void *s, void ***stack) |
int | setMemoryChareIDFromPtr (void *ptr) |
void | setMemoryChareID (int id) |
void | setMemoryOwnedBy (void *ptr, int id) |
void * | CmiMallocAligned (const size_t size, const unsigned int alignment) |
void | CmiFreeAligned (void *ptr) |
CLINKAGE void * | __libc_memalign (size_t alignment, size_t bytes) |
CLINKAGE void * | __default_morecore (ptrdiff_t) |
CLINKAGE int | mallopt (int param_number, int value) CMK_THROW |
CLINKAGE void | __malloc_fork_lock_parent (void) |
CLINKAGE void | __malloc_fork_unlock_parent (void) |
CLINKAGE void | __malloc_fork_unlock_child (void) |
char * | strdup (const char *str) |
char * | strndup (const char *str, size_t n) |
Variables | |
void * | memory_stack_top |
int | cpdInSystem = 1 |
void *(* | mm_malloc )(size_t) = initialize_memory_wrapper_malloc |
void *(* | mm_calloc )(size_t, size_t) = initialize_memory_wrapper_calloc |
void *(* | mm_realloc )(void *, size_t) = initialize_memory_wrapper_realloc |
void *(* | mm_memalign )(size_t, size_t) = initialize_memory_wrapper_memalign |
int(* | mm_posix_memalign )(void **, size_t, size_t) = initialize_memory_wrapper_posix_memalign |
void *(* | mm_aligned_alloc )(size_t, size_t) = initialize_memory_wrapper_aligned_alloc |
void *(* | mm_valloc )(size_t) = initialize_memory_wrapper_valloc |
void *(* | mm_pvalloc )(size_t) = initialize_memory_wrapper_pvalloc |
void(* | mm_free )(void *) = initialize_memory_wrapper_free |
void(* | mm_cfree )(void *) = initialize_memory_wrapper_cfree |
struct mallinfo(* | mm_mallinfo )(void) = NULL |
static char | fake_malloc_buffer [1024] |
static char * | fake_malloc_buffer_pos = fake_malloc_buffer |
char | initialize_memory_wrapper_status |
CMK_TYPEDEF_UINT8 | _memory_allocated = 0 |
CMK_TYPEDEF_UINT8 | _memory_allocated_max = 0 |
CMK_TYPEDEF_UINT8 | _memory_allocated_min = 0 |
static int | rank_holding_CmiMemLock = -1 |
static int | CmiMemoryIs_flag = 0 |
static char * | memory_lifeRaft = NULL |
memory_lifeRaft is a very small heap-allocated region. | |
int | memory_status_info = 0 |
int | memory_chare_id = 0 |
static void *(* | old_malloc_hook )(size_t, const void *) |
static void *(* | old_realloc_hook )(void *, size_t, const void *) |
static void *(* | old_memalign_hook )(size_t, size_t, const void *) |
static void(* | old_free_hook )(void *, const void *) |
void(* | __MALLOC_HOOK_VOLATILE )(void) = my_init_hook |
void(* | __malloc_initialize_hook )(void) = my_init_hook |
static int | skip_mallinfo = 0 |
static int | MemusageInited = 0 |
static uintptr_t | MemusageInitSbrkval = 0 |
struct CmiMemUsageStruct | memtest_order [] |
static int | CmiMemoryInited = 0 |
There are several possible implementations provided here-- the user can link in whichever is best using the -memory option with charmc.
The major possibilities here are empty (use the system's malloc), GNU (use memory-gnu.C), and meta (use e.g. memory-paranoid.C). On machines without sbrk(), only the system's malloc is available.
The CMK_MEMORY_BUILD_* symbols come in from the compiler command line.
To determine how much memory your Charm++ program is using on a processor, call CmiMemoryUsage(). This function will return the number of bytes allocated, usually representing the heap size. It is possible that this measurement will not exactly represent the heap size, but rather will reflect the total amount of memory used by the program.
typedef CMK_TYPEDEF_UINT8(* CmiMemUsageFn)(void) |
void initialize_memory_wrapper | ( | void | ) |
Definition at line 36 of file memory-os-wrapper.C.
References int, mm_aligned_alloc, mm_calloc, mm_cfree, mm_free, mm_mallinfo, mm_malloc, mm_memalign, mm_posix_memalign, mm_pvalloc, mm_realloc, mm_valloc, and size_t.
Referenced by initialize_memory_wrapper_aligned_alloc(), initialize_memory_wrapper_calloc(), initialize_memory_wrapper_cfree(), initialize_memory_wrapper_free(), initialize_memory_wrapper_malloc(), initialize_memory_wrapper_memalign(), initialize_memory_wrapper_posix_memalign(), initialize_memory_wrapper_pvalloc(), initialize_memory_wrapper_realloc(), and initialize_memory_wrapper_valloc().
Definition at line 164 of file memory.C.
References fake_calloc(), initialize_memory_wrapper(), and mm_calloc.
void * initialize_memory_wrapper_malloc | ( | size_t | size | ) |
Definition at line 171 of file memory.C.
References fake_malloc(), initialize_memory_wrapper(), and mm_malloc.
void * initialize_memory_wrapper_realloc | ( | void * | ptr, | |
size_t | size | |||
) |
Definition at line 178 of file memory.C.
References initialize_memory_wrapper(), and mm_realloc.
Definition at line 183 of file memory.C.
References initialize_memory_wrapper(), and mm_memalign.
Definition at line 188 of file memory.C.
References initialize_memory_wrapper(), and mm_posix_memalign.
Definition at line 193 of file memory.C.
References initialize_memory_wrapper(), and mm_aligned_alloc.
void * initialize_memory_wrapper_valloc | ( | size_t | size | ) |
Definition at line 198 of file memory.C.
References initialize_memory_wrapper(), and mm_valloc.
void * initialize_memory_wrapper_pvalloc | ( | size_t | size | ) |
Definition at line 203 of file memory.C.
References initialize_memory_wrapper(), and mm_pvalloc.
void initialize_memory_wrapper_free | ( | void * | ptr | ) |
Definition at line 208 of file memory.C.
References initialize_memory_wrapper().
void initialize_memory_wrapper_cfree | ( | void * | ptr | ) |
Definition at line 215 of file memory.C.
References initialize_memory_wrapper().
static void* fake_malloc | ( | size_t | size | ) | [static] |
Definition at line 131 of file memory.C.
References CmiPrintf().
Referenced by fake_calloc(), and initialize_memory_wrapper_malloc().
Definition at line 149 of file memory.C.
References fake_malloc().
Referenced by initialize_memory_wrapper_calloc().
Definition at line 257 of file memory.C.
Referenced by CtgGlobalStruct::allocate(), TraceBluegene::bgPrint(), CkMessageWatcherInit(), TCharm::UserData::pup(), TCharm::pup(), AmpiRequestList::pup(), CtgGlobalStruct::pup(), TCharm::pupThread(), TCharm::TCharm(), and CtgGlobalStruct::~CtgGlobalStruct().
void CmiOutOfMemoryInit | ( | void | ) |
Definition at line 1013 of file memory.C.
References CmiMyRank(), memory_preallocate_hack(), and mm_malloc.
Referenced by CmiMemoryInit().
void CmiOutOfMemory | ( | int | nBytes | ) |
Definition at line 271 of file memory.C.
References CmiAbort(), CmiMemoryUsage(), and free().
Referenced by meta_aligned_alloc(), meta_calloc(), meta_malloc(), meta_memalign(), meta_posix_memalign(), meta_pvalloc(), and meta_valloc().
static void* meta_malloc | ( | size_t | size | ) | [static] |
Definition at line 27 of file memory-lock.C.
References CmiOutOfMemory(), and mm_malloc.
static void* meta_realloc | ( | void * | mem, | |
size_t | size | |||
) | [static] |
Definition at line 60 of file memory-lock.C.
References CmiOutOfMemory(), and mm_memalign.
static void meta_free | ( | void * | mem | ) | [static] |
static void* meta_malloc_hook | ( | size_t | s, | |
const void * | c | |||
) | [static] |
Definition at line 305 of file memory.C.
References meta_malloc().
Referenced by my_init_hook().
static void* meta_realloc_hook | ( | void * | p, | |
size_t | s, | |||
const void * | c | |||
) | [static] |
Definition at line 306 of file memory.C.
References meta_realloc().
Referenced by my_init_hook().
Definition at line 307 of file memory.C.
References meta_memalign().
Referenced by my_init_hook().
static void meta_free_hook | ( | void * | p, | |
const void * | c | |||
) | [static] |
Definition at line 308 of file memory.C.
References meta_free().
Referenced by my_init_hook().
static void my_init_hook | ( | void | ) | [static] |
Definition at line 365 of file memory.C.
References meta_free_hook(), meta_malloc_hook(), meta_memalign_hook(), meta_realloc_hook(), old_free_hook, old_malloc_hook, old_memalign_hook, and old_realloc_hook.
void * malloc | ( | size_t | size | ) |
Definition at line 383 of file memory.C.
References meta_malloc(), and size.
Referenced by _allocNewChare(), _futuresModuleInit(), _initCharm(), CpdList_object::add(), CpdList_objectNames::add(), add_slots(), add_to_list(), FEM_MUtil::addElemRemote(), FEM_MUtil::addGhostElementRemote(), femMeshModify::addNodeRemote(), FEM_MUtil::addToSharedList(), ADIOI_Malloc_fn(), aggregate_com_mat(), aggregate_obj_weight(), alloc_lum(), CtgGlobalStruct::allocate(), CkArray::allocate(), allocateSmsgList(), AMPI_Alltoall_medium(), AMPI_Alltoall_short(), AMPI_API_IMPL(), FEM_MUtil::AreaTest(), arg_init(), args2argv(), LBgroup::balance(), BGQTorusManager::BGQTorusManager(), build_comm(), build_cost_matrix(), build_level_topology(), build_synthetic_proc_id(), build_synthetic_topology(), build_synthetic_topology_old(), build_tree_from_topology(), build_trtable(), FEM_MUtil::buildChunkToNodeTable(), built_pivot_tree(), bvset_enumerate(), PUP::xlater::bytes(), cb_gather_name_array(), CcdModuleInit(), ccs_getinfo(), ccs_killport(), CcsBufferMessage(), CcsDelayReply(), CcsHandleRequest(), CcsRecvResponseMsg(), CcsSecMan_default(), CcsServer_recvRequestData(), CfutureCreate(), check_stdio_header(), ChMessage_new(), ChMessageData_recv(), CIdleTimeoutInit(), CkCreateLocalGroup(), CkCreateLocalNodeGroup(), CkPupMainChareData(), CkSequence< T >::CkSequence(), CldComputeNeighborData(), CldModuleGeneralInit(), CldStoreCharemsg(), PUP::able::clone(), CmiCopyArgs(), CmiCreateLock(), CmiCreateNotifyCommThdMsg(), CmiCreateReceiverPersistent(), CmiExtendHandlerTable(), CmiGetNonLocalNodeQ(), CmiGetReductionCreate(), CmiInitCPUAffinity(), CmiInitMemAffinity(), CmiInitNotifyCommThdScheme(), CmiMallocAligned(), CmiReductionsInit(), CmiSendMessagePxshm(), CmiSendMessageXpmem(), CmiSetPartitionSizes(), CmiTmpAlloc(), CmiTmpSetup(), CmmPup(), FEM_Adapt_Algs::Coarsen(), complete_com_mat(), complete_obj_weight(), complete_tab_node(), compressedBuffer::compressedBuffer(), compressLz4(), CompressPersistentMsg(), compressZlib(), redistributor2D::continueToNextStep(), ConverseInit(), CPathGetReduction(), CPathGetSingle(), CPathModuleInit(), CpdConditional_SetupComm(), Cpthread_cleanup_push(), Cpthread_create(), Cpthread_key_create(), Cpthread_start_main(), CQdStateCreate(), create_btree_node(), create_dumb_tree(), create_topoaware_partitions(), createCtrlMsgIrecvBufs(), CreateGraphDual(), CreateGraphNodal(), FuncCkLoop::createPThreads(), cstring_join(), CthAllocateStack(), CthCreate(), CthCreateInner(), CthFree(), CthInit(), CthPup(), CthPupBase(), CthResume1(), CthThreadBaseInit(), CthThreadInit(), CWeb_Deliver(), CWebHandler(), DataNodeCreate(), decompressLz4(), decompressZlib(), derive_shared_nodes(), FEM_Adapt_Algs::didItFlip(), disabled_map(), display_other_heuristics(), dupargv(), FEM_AdaptL::edge_bisect(), BulkAdapt::edge_bisect_3D(), FEM_Adapt::edge_bisect_help(), FEM_AdaptL::edge_contraction(), FEM_AdaptL::edge_contraction_help(), FEM_AdaptL::edge_flip(), FEM_Adapt::edge_flip_help(), expand_cblist(), expand_ccd_heap(), fast_grouping(), FEM_add_element(), FEM_purge_element(), FEM_remove_element(), FEM_remove_node_local(), FIFO_Create(), FIFO_Enumerate(), FIFO_Expand(), find_largest_free_region(), findFirstCaptures(), edge::flipPrevent(), FreeMPMCNodePoolCreate(), FreeNodePoolCreate(), g_initGraph(), generate_random_sol(), generateRandomGraph(), get_comm_speed(), BulkAdapt::get_elemsToLock(), getAmpiBinaryPath(), FEM_Adapt_Algs::getArea(), FEM_Adapt_Algs::getAreaQuality(), FEM_MUtil::getChunkNos(), getFreeRecvSlot(), getFreeSendSlot(), getNeighborsTopoTree_R(), FEM_Adapt_Algs::getShortestEdge(), gk_gkmcoreCreate(), gk_malloc(), group_nodes(), BulkAdapt::handle_split_3D(), handler(), init_cblist(), init_predefined_test(), SuperBlock::initBlock(), InitEdgeList(), initGraph(), initTraceCore(), InitVertices(), CkSequence< T >::Insert(), lbObjects::Insert(), insert_TraceCoreEvent(), chunk::insertLock(), sim::InternalCommitPrintf(), irecvListEntryAllocate(), chunk::joinCommLists(), lbObjectNode::lbObjectNode(), lbObjects::lbObjects(), LBstrategy::LBstrategy(), FEM_Adapt_Algs::length(), list_insert(), CentralLB::LoadBalance(), TraceCore::LogEvent(), main(), makeQueue(), makeSet(), malloc_nomigrate(), malloc_reentrant(), map_MPIPP(), map_topology(), Matrix::Matrix(), merge(), MPIO_Datatype_allocate(), MPMCDataNodeCreate(), MPMCQueueCreate(), MPSCQueueCreate(), new_group_list(), new_slotset(), ntohl(), PythonReplyString::operator new(), TraceEntry::operator new(), operator new(), BinEntry::operator new(), LogEntry::operator new(), readonlybase::operator new(), ckcomplex::operator new[](), PythonIterator::pack(), PythonExecute::pack(), pack(), FEM_MUtil::packEntData(), ParFUM_recreateSharedNodes(), parse_args(), parseInfo(), partial_sort(), pathextfix(), pathfix_append(), PCQueueCreate(), persistentDecompressHandler(), persistentRequestHandler(), pidtonid(), BGQTorusManager::populateLocalNodes(), pparam_cell(), LBSimulation::PrintDecisions(), printStats(), RandomSequence< T >::pup(), CkSequence< T >::pup(), Boomarray< T >::pup(), CProxy::pup(), NetFEM_updatePackage::pupMallocBuf(), pvtObjects::pvtObjects(), RandomSequence< T >::RandomSequence(), read_file(), memoryBuffer::reallocate(), FEM_Adapt_Algs::Refine(), FEM_Adapt_Algs::refine_element_leb(), RegisterCkLoopHdlrs(), FEM_MUtil::removeNodeAll(), memoryBuffer::resize(), run_test(), search_pemap(), select_independent_groups(), select_independent_groups_by_largest_index(), SendMsgBuf(), GreedyRefineLB::sendSolution(), ReadOnlyExt::setData(), FEM_Adapt_Algs::SetMeshSize(), FEM_Adapt_Algs::SetReferenceMesh(), sim::sim(), FEM_Adapt_Algs::simple_coarsen(), FEM_Adapt_Algs::simple_refine(), CentralLB::simulationRead(), CentralLB::simulationWrite(), FEM_MUtil::splitEntityAll(), FEM_MUtil::splitEntityRemote(), strdup(), StrKey::StrKey(), strndup(), FEM_MUtil::StructureTest(), substr(), super_fast_grouping(), TaskQueueCreate(), test_file(), traceCommonInit(), TreeMatchMapping(), FEM_AdaptL::unlockNodes(), update_comm_speed(), edge::updateCloud(), FEM_AdaptL::vertex_remove(), FEM_Adapt::vertex_remove_help(), FEM_Adapt::vertex_split_help(), ZoltanLB::work(), TreeMatchLB::work(), ScotchTopoLB::work(), ScotchRefineLB::work(), ScotchLB::work(), RecBisectBfLB::work(), write_stdio_duplicate(), and XTTorusManager::XTTorusManager().
void free | ( | void * | ptr | ) |
Definition at line 384 of file memory.C.
References meta_free().
Referenced by CpdList_arrayElements::add(), CpdList_arrayElementNames::add(), CpdList_objectNames::add(), add_free_node(), add_slots(), AddEdges(), FEM_MUtil::addElemRemote(), FEM_MUtil::addGhostElementRemote(), femMeshModify::addNodeRemote(), FEM_MUtil::addToSharedList(), ADIOI_Free_fn(), AMPI_Alltoall_medium(), AMPI_Alltoall_short(), AMPI_API_IMPL(), analyze(), CentralLB::ApplyDecision(), FEM_MUtil::AreaTest(), arg_init(), bgq_topo_free(), BGQTorusManager::BGQTorusManager(), btree_delete(), btree_delete_int(), build_level_topology(), build_trtable(), FEM_MUtil::buildChunkToNodeTable(), PUP::xlater::bytes(), cb_gather_name_array(), ccs_getinfo(), CcsConnectIpWithTimeout(), CcsHandleRequest(), CcsNoDelayedReply(), CcsReleaseMessages(), CcsSendDelayedReply(), CcsServer_recvRequestData(), CcsServerCheck(), CfutureDestroy(), ChMessage_free(), CkGetFileStripeSize(), CldComputeNeighborData(), CldMultipleSend(), CldMultipleSendPrio(), PUP::able::clone(), CmiAddCLA(), CmiArgInit(), CmiBacktracePrint(), CmiClearReduction(), CmiDestroyAllPersistent(), CmiDestroyLock(), CmiDestroyPersistent(), CmiExitPxshm(), CmiExitXpmem(), CmiExtendHandlerTable(), CmiFreeAligned(), CmiFreeNotifyCommThdMsg(), CmiGetNonLocalNodeQ(), CmiGetReductionCreate(), CmiInitMemAffinity(), CmiIsFortranLibraryCall(), CmiOutOfMemory(), CmiSendMessagePxshm(), CmiSendMessageXpmem(), CmiTmpFree(), CmmPup(), complete_tab_node(), CompressPersistentMsg(), redistributor2D::continueToNextStep(), ConverseInit(), CPathForwardReduction(), CpdConditional_SetupComm(), Cpthread_cleanup_pop(), Cpthread_detach(), Cpthread_exit(), Cpthread_join(), Cpthread_main_wrapper(), craynid_free(), create_topoaware_partitions(), CreateGraphDual(), CreateGraphNodal(), CthFree(), CthResume1(), CthResumeNormalThread(), CthResumeNormalThreadDebug(), CthThreadBaseFree(), CthThreadFree(), CWeb_Deliver(), decompressLz4(), decompressZlib(), delete_btree(), delete_group_list(), delete_list_array(), delete_slotset(), derive_shared_nodes(), destroySet(), diameter(), FEM_Adapt_Algs::didItFlip(), disabled_unmap(), display_other_heuristics(), FEM_AdaptL::edge_bisect(), BulkAdapt::edge_bisect_3D(), FEM_Adapt::edge_bisect_help(), FEM_AdaptL::edge_contraction(), FEM_AdaptL::edge_contraction_help(), FEM_AdaptL::edge_flip(), FEM_Adapt::edge_flip_help(), FuncCkLoop::exit(), expand_cblist(), expand_ccd_heap(), fast_grouping(), FEM_add_element(), FEM_Ghost_Essential_attributes(), FEM_Interpolate::FEM_InterpolateCopyAttributes(), FEM_Interpolate::FEM_InterpolateNodeOnEdge(), FEM_Modify_correctLockN(), FEM_Modify_LockN(), FEM_Modify_UnlockN(), FEM_MUtil::FEM_Print_coords(), FEM_purge_element(), FEM_remove_element(), FEM_remove_node_local(), FIFO_Destroy(), FIFO_Expand(), find_largest_free_region(), FEM_Adapt::findElementWithNodes(), free_bucket(), free_bucket_list(), free_list_child(), free_nomigrate(), free_reentrant(), free_tab_bucket(), free_tab_child(), free_tab_double(), free_tab_int(), free_topology(), free_tree(), compressedBuffer::freeBuf(), objListMsg::freeHeapAllocated(), FreeMPMCNodePoolDestroy(), FreeNodePoolDestroy(), BulkAdapt::freeTableID(), g_freeGraph(), generate_random_sol(), getAmpiBinaryPath(), FEM_Adapt_Algs::getArea(), getAvailMemory(), FEM_Adapt_Algs::getCoord(), NetFEM_state::getCurrent(), getReqs(), FEM_Adapt_Algs::getShortestEdge(), gk_free(), gk_gkmcoreCreate(), gk_gkmcoreDestroy(), gk_gkmcorePop(), group_nodes(), BulkAdapt::handle_split_3D(), CkListString::includes(), sim::InternalCommitPrintf(), chunk::joinCommLists(), LBTOPO_MACRO(), FEM_Adapt_Algs::length(), list_delete(), listToMessage(), FEM_lock::lock(), BulkAdapt::lock_3D_region(), chunk::lockLocalChunk(), main(), map_MPIPP(), map_topology(), match_ctx_clean(), merge(), METIS_Free(), METIS_MeshToDual(), METIS_MeshToNodal(), MPIO_Datatype_delete_attr_function(), mpmc_add_free_node(), mpmc_get_push_node(), MPMCQueueDestroy(), MPSCQueueDestroy(), FEM_Adapt::n2e_exists(), NetFEM_End(), ntohl(), TraceEntry::operator delete(), operator delete(), BinEntry::operator delete(), LogEntry::operator delete(), ckcomplex::operator delete[](), femMeshModify::packEntData(), ParFUM_recreateSharedNodes(), partial_sort(), pathextfix(), PCQueueDestroy(), PCQueuePop(), persistentDecompressHandler(), persistentDestroyHandler(), print_cpu_affinity(), print_thread_affinity(), PrintBackTrace(), printStats(), redistributor2D::pup(), CProxy::pup(), PUPfunctionpointer(), read_file(), ReadTPwgts(), memoryBuffer::reallocate(), RecBisectBfLB::recursivePartition(), FEM_Adapt_Algs::refine_element_leb(), ReleasePostedMessages(), chunk::removeLock(), FEM_MUtil::removeNodeAll(), memoryBuffer::resize(), CentralLB::ResumeFromReallocCheckpoint(), opt::Rollback(), run_test(), scaleable_stat(), search_pemap(), select_independent_groups(), select_independent_groups_by_largest_index(), SendMsgBuf(), GreedyRefineLB::sendSolution(), xi::SerialConstruct::SerialConstruct(), set_process_affinity(), set_thread_affinity(), FEM_Adapt_Algs::SetReferenceMesh(), FEM_Adapt_Algs::simple_coarsen(), FEM_Adapt_Algs::simple_refine(), CentralLB::simulationRead(), CentralLB::simulationWrite(), FEM_MUtil::splitEntityAll(), FEM_MUtil::splitEntityRemote(), FEM_MUtil::StructureTest(), super_fast_grouping(), test_file(), traceCommonInit(), TreeMatchMapping(), FEM_AdaptL::unlockNodes(), FEM_AdaptL::vertex_remove(), FEM_Adapt::vertex_remove_help(), FEM_Adapt::vertex_split_help(), ZoltanLB::work(), TreeMatchLB::work(), ScotchTopoLB::work(), ScotchRefineLB::work(), ScotchLB::work(), RecBisectBfLB::work(), TraceEntry::write(), write_stdio_duplicate(), Boomarray< T >::~Boomarray(), CkListString::~CkListString(), CtgGlobalStruct::~CtgGlobalStruct(), Event::~Event(), eventQueue::~eventQueue(), FuncSingleHelper::~FuncSingleHelper(), memoryBuffer::~memoryBuffer(), PythonExecute::~PythonExecute(), StrKey::~StrKey(), SuperBlock::~SuperBlock(), TraceEntry::~TraceEntry(), and XTTorusManager::~XTTorusManager().
Definition at line 385 of file memory.C.
References meta_calloc(), and size.
Referenced by AddEdges(), ADIOI_Calloc_fn(), build_level_topology(), build_trtable(), CldComputeNeighborData(), CldMultipleSend(), CldMultipleSendPrio(), CldReadNeighborData(), CmiGroupInit(), CmiInitPxshm(), CmiInitXpmem(), CmiSendMessagePxshm(), CmiSendMessageXpmem(), CmiStartThreads(), CPathModuleInit(), create_cd_newstate(), create_ci_newstate(), create_dumb_tree(), create_partition_map(), create_topoaware_partitions(), diameter(), get_subexp(), init_dfa(), main(), match_ctx_add_sublast(), match_ctx_add_subtop(), partial_sort(), PCQueueCreate(), PCQueuePush(), pparam_setdef(), and TreeMatchLB::work().
void cfree | ( | void * | ptr | ) |
Definition at line 386 of file memory.C.
References meta_cfree().
void * realloc | ( | void * | ptr, | |
size_t | size | |||
) |
Definition at line 387 of file memory.C.
References meta_realloc(), and size.
Referenced by add_to_bucket(), ADIOI_Realloc_fn(), arg_init(), CCS_AUTH_addClient(), CmiAddCLA(), CPathAllocEltset(), createFuture(), CthFixData(), getAmpiBinaryPath(), getAvailMemory(), gk_gkmcoreAdd(), gk_mcoreAdd(), gk_realloc(), RandomSequence< T >::Insert(), CkSequence< T >::Insert(), pvtObjects::Insert(), lbObjects::Insert(), and push_fail_stack().
Definition at line 388 of file memory.C.
References meta_memalign(), and size.
Referenced by __libc_memalign(), ADIOI_LUSTRE_Directio(), ADIOI_Malloc_fn(), ADIOI_XFS_ReadContig(), and ADIOI_XFS_WriteContig().
Definition at line 389 of file memory.C.
References meta_posix_memalign(), and size.
Referenced by PPC_AtomicCounterAllocate(), and PPCAtomicQueueInit().
Definition at line 390 of file memory.C.
References meta_aligned_alloc(), and size.
void * valloc | ( | size_t | size | ) |
Definition at line 391 of file memory.C.
References meta_valloc(), and size.
void * pvalloc | ( | size_t | size | ) |
Definition at line 392 of file memory.C.
References meta_pvalloc(), and size.
void CmiMemoryInit | ( | char ** | argv | ) |
Definition at line 406 of file memory.C.
References CmiArgGroup(), CmiMyRank(), CmiNodeAllBarrier(), CmiOutOfMemoryInit(), and meta_init().
Referenced by ConverseCommonInit().
CLINKAGE void* malloc_reentrant | ( | size_t | size | ) |
CLINKAGE void free_reentrant | ( | void * | mem | ) |
static INLINE CMK_TYPEDEF_UINT8 MemusageMstats | ( | void | ) | [static] |
static INLINE CMK_TYPEDEF_UINT8 MemusageSbrk | ( | void | ) | [static] |
static INLINE CMK_TYPEDEF_UINT8 MemusageProcSelfStat | ( | void | ) | [static] |
static INLINE CMK_TYPEDEF_UINT8 MemusageMallinfo | ( | void | ) | [static] |
static INLINE CMK_TYPEDEF_UINT8 MemusagePS | ( | void | ) | [static] |
static CMK_TYPEDEF_UINT8 MemusageWindows | ( | void | ) | [static] |
static CMK_TYPEDEF_UINT8 MemusageBGQ | ( | void | ) | [static] |
CMK_TYPEDEF_UINT8 CmiMemoryUsage | ( | void | ) |
Return number of bytes currently allocated, if possible.
Definition at line 583 of file memory.C.
References __malloc_initialized, malloc_segment::base, CmiMemUsageStruct::fn, malloc_state::footprint, malloc_chunk::head, PUP::m, memtest_order, malloc_segment::next, PUP::s, malloc_state::seg, malloc_state::top, and malloc_state::topsize.
Referenced by TraceControlPoints::beginIdle(), CmiOutOfMemory(), TraceControlPoints::endExecute(), FEM_master_parallel_part(), FEM_Mesh_Parallel_broadcast(), FTN_NAME(), DistBaseLB::LoadBalance(), CentralLB::LoadBalance(), TraceControlPoints::malloc(), DistBaseLB::ProcessMigrationDecision(), DistBaseLB::ResumeClients(), and traceCommonInit().
const char* CmiMemoryUsageReporter | ( | void | ) |
Definition at line 593 of file memory.C.
References CmiMemUsageStruct::fn, memtest_order, and CmiMemUsageStruct::name.
CMK_TYPEDEF_UINT8 CmiMaxMemoryUsageR | ( | void | ) |
CMK_TYPEDEF_UINT8 CmiMaxMemoryUsage | ( | void | ) |
Return number of maximum number of bytes allocated since the last call to CmiResetMaxMemory(), if possible.
Definition at line 620 of file memory.C.
References __malloc_initialized, PUP::m, and malloc_state::max_footprint.
Referenced by FEM_master_parallel_part(), FTN_NAME(), and controlPointManager::requestMemoryUsage().
void CmiResetMaxMemory | ( | void | ) |
Reset the mechanism that records the highest seen (high watermark) memory usage.
Definition at line 621 of file memory.C.
Referenced by CkCacheManager< CkCacheKey >::cacheSync(), and controlPointManager::requestMemoryUsage().
CMK_TYPEDEF_UINT8 CmiMinMemoryUsage | ( | void | ) |
static void meta_init | ( | char ** | argv | ) | [static] |
Definition at line 647 of file memory.C.
References CmiMyRank().
static void meta_cfree | ( | void * | mem | ) | [static] |
static void* meta_valloc | ( | size_t | size | ) | [static] |
static void* meta_pvalloc | ( | size_t | size | ) | [static] |
CLINKAGE void* malloc_nomigrate | ( | size_t | size | ) |
Definition at line 228 of file memory-isomalloc.C.
References CmiMemLock(), CmiMemUnlock(), and mm_malloc.
CLINKAGE void free_nomigrate | ( | void * | mem | ) |
Definition at line 236 of file memory-isomalloc.C.
References CmiMemLock(), CmiMemUnlock(), and mm_free.
CmiIsomallocBlockList* CmiIsomallocBlockListActivate | ( | CmiIsomallocBlockList * | l | ) |
CmiIsomallocBlockList* CmiIsomallocBlockListCurrent | ( | void | ) |
void CmiMemoryMark | ( | void | ) |
Definition at line 983 of file memory.C.
Referenced by CmiMemorySweep().
void CmiMemoryMarkBlock | ( | void * | blk | ) |
Definition at line 984 of file memory.C.
Referenced by CkArrayBroadcaster::incoming().
void CmiMemoryCheck | ( | void | ) |
Definition at line 986 of file memory.C.
Referenced by _checkpointAckHandler(), _getTicket(), _removeProcessedLogHandler(), _resendMessagesHandler(), _sendDetsHandler(), _startCheckpointHandler(), _storeDeterminantsHandler(), femMeshModify::addElementRemote(), FEM_MUtil::addElemRemote(), femMeshModify::addGhostElem(), FEM_MUtil::addGhostElementRemote(), ChareMlogData::addLogEntry(), femMeshModify::addNodeRemote(), femMeshModify::addSharedNodeRemote(), FEM_MUtil::addToSharedList(), femMeshModify::addToSharedList(), femMeshModify::addTransIDXLRemote(), FEM_Node::allocateNodeAdjacency(), FEM_MUtil::buildChunkToNodeTable(), clearUpMigratedRetainedLists(), CmiSendMessagePxshm(), CmiSendMessageXpmem(), FEM_Mesh::createElemElemAdj(), FEM_Mesh::createNodeElemAdj(), FEM_Mesh::createNodeNodeAdj(), FEM_Mesh::e2e_getAll(), FEM_Mesh::e2e_getIndex(), FEM_Mesh::e2e_getNbr(), FEM_Mesh::e2e_removeAll(), FEM_Mesh::e2e_replace(), FEM_Mesh::e2e_setAll(), FEM_Mesh::e2e_setIndex(), FEM_Mesh::e2n_getAll(), FEM_Mesh::e2n_getIndex(), FEM_Mesh::e2n_getNode(), FEM_Mesh::e2n_removeAll(), FEM_Mesh::e2n_replace(), FEM_Mesh::e2n_setAll(), FEM_Mesh::e2n_setIndex(), FEM_MUtil::exists_in_IDXL(), FEM_add_element(), FEM_add_element_local(), FEM_add_node(), FEM_add_shared_node_remote(), FEM_Modify_LockN(), FEM_Modify_UnlockN(), FEM_REF_INIT(), FEM_REFINE2D_Split(), FEM_remove_element(), FEM_remove_element_local(), FEM_remove_node(), FEM_remove_node_local(), FORTRAN_AS_C(), FTN_NAME(), FEM_Mesh::get2ElementsOnEdge(), FEM_MUtil::getChunkNos(), femMeshModify::getChunksSharingGhostNode(), FEM_MUtil::getChunksSharingGhostNodeRemote(), FEM_Mesh::getElementOnEdge(), femMeshModify::getIdxGhostSend(), femMeshModify::getRemoteBound(), femMeshModify::getRemoteCoord(), FEM_MUtil::getRemoteIdx(), femMeshModify::hasLockRemoteNode(), FEM_MUtil::idxllock(), FEM_MUtil::idxllockLocal(), femMeshModify::idxllockRemote(), FEM_MUtil::idxlunlock(), FEM_MUtil::idxlunlockLocal(), femMeshModify::idxlunlockRemote(), FEM_MUtil::isShared(), femMeshModify::lockRemoteNode(), FEM_MUtil::lookup_in_IDXL(), makeGhost(), chunk::multipleCoarsen(), FEM_Mesh::n2e_add(), FEM_Mesh::n2e_getAll(), FEM_Mesh::n2e_remove(), FEM_Mesh::n2e_removeAll(), FEM_Mesh::n2e_replace(), FEM_Mesh::n2n_add(), FEM_Mesh::n2n_exists(), FEM_Mesh::n2n_getAll(), FEM_Mesh::n2n_remove(), FEM_Mesh::n2n_removeAll(), FEM_Mesh::n2n_replace(), populateDeterminantTable(), postProcessReceivedMessage(), preProcessReceivedMessage(), processDelayedRemoteMsgQueue(), processReceivedDet(), femMeshModify::refine_flip_element_leb(), femMeshModify::removeElementRemote(), FEM_MUtil::removeElemRemote(), femMeshModify::removeGhostElem(), FEM_MUtil::removeGhostElementRemote(), femMeshModify::removeGhostNode(), FEM_MUtil::removeGhostNodeRemote(), femMeshModify::removeIDXLRemote(), FEM_MUtil::removeNodeAll(), FEM_MUtil::removeNodeRemote(), removeProcessedLogs(), femMeshModify::removeSharedNodeRemote(), FEM_MUtil::Replace_node_local(), sendCommonMsg(), sendLocalMsg(), sendMsg(), sendRemoteMsg(), sendRemoveLogRequests(), femMeshModify::setFemMesh(), FEM_Node::setNodeAdjacency(), FEM_MUtil::splitEntityAll(), FEM_MUtil::splitEntityRemote(), startMlogCheckpoint(), femMeshModify::unlockRemoteNode(), BulkAdapt::update_local_face_adj(), update_new_element_e2e(), femMeshModify::updateIdxlList(), femMeshModify::updateNodeAttrs(), and femMeshModify::verifyIdxlList().
void memory_preallocate_hack | ( | void | ) |
void CpdSetInitializeMemory | ( | int | v | ) |
Definition at line 1024 of file memory.C.
Referenced by CkMessageWatcherInit(), and cpd_memory_single_pup().
size_t cpd_memory_length | ( | void * | lenParam | ) |
Returns the number of total blocks of memory allocated.
Definition at line 1025 of file memory.C.
Referenced by CpdCharmInit().
void cpd_memory_pup | ( | void * | itemParam, | |
pup_er | p, | |||
CpdListItemsRequest * | req | |||
) |
void cpd_memory_leak | ( | void * | itemParam, | |
pup_er | p, | |||
CpdListItemsRequest * | req | |||
) |
void check_memory_leaks | ( | LeakSearchInfo * | i | ) |
Definition at line 1028 of file memory.C.
Referenced by cpd_memory_single_pup(), and ntohl().
size_t cpd_memory_getLength | ( | void * | lenParam | ) |
Definition at line 1029 of file memory.C.
Referenced by cpd_memory_single_pup(), and CpdCharmInit().
void cpd_memory_get | ( | void * | itemParam, | |
pup_er | p, | |||
CpdListItemsRequest * | req | |||
) |
void CpdMemoryMarkClean | ( | char * | msg | ) |
Definition at line 1031 of file memory.C.
Referenced by cpd_memory_single_pup(), and ntohl().
Definition at line 1034 of file memory.C.
Referenced by cpd_memory_single_pup().
void setMemoryTypeChare | ( | void * | ptr | ) |
Definition at line 1039 of file memory.C.
Referenced by _allocNewChare(), CkArray::allocate(), CkCreateLocalGroup(), CkCreateLocalNodeGroup(), and cpd_memory_single_pup().
void setMemoryTypeMessage | ( | void * | ptr | ) |
Definition at line 1043 of file memory.C.
Referenced by CkAllocateMarshallMsg(), CkAllocateMarshallMsgNoninline(), CkAllocateMarshallMsgT(), CkAllocMsg(), CkAllocSysMsg(), CkCopyMsg(), and cpd_memory_single_pup().
void CpdSystemEnter | ( | void | ) |
Definition at line 1044 of file memory.C.
Referenced by CmiError(), CmiPrintf(), cpd_memory_single_pup(), and CpdAfterEp().
void CpdSystemExit | ( | void | ) |
Definition at line 1045 of file memory.C.
Referenced by CmiError(), CmiPrintf(), cpd_memory_single_pup(), and CpdBeforeEp().
void CpdResetMemory | ( | void | ) |
Definition at line 1047 of file memory.C.
Referenced by cpd_memory_single_pup(), and CpdBeforeEp().
void CpdCheckMemory | ( | void | ) |
Definition at line 1048 of file memory.C.
Referenced by cpd_memory_single_pup(), and CpdAfterEp().
int get_memory_allocated_user_total | ( | void | ) |
Definition at line 1050 of file memory.C.
Referenced by TraceMemory::traceBegin().
void* MemoryToSlot | ( | void * | ptr | ) |
Definition at line 1051 of file memory.C.
Referenced by cpd_memory_single_pup(), and CpdNotify().
int setMemoryChareIDFromPtr | ( | void * | ptr | ) |
Definition at line 1058 of file memory.C.
Referenced by cpd_memory_single_pup(), and CpdBeforeEp().
void setMemoryChareID | ( | int | id | ) |
Definition at line 1062 of file memory.C.
Referenced by cpd_memory_single_pup(), and CpdAfterEp().
void setMemoryOwnedBy | ( | void * | ptr, | |
int | id | |||
) |
Definition at line 1066 of file memory.C.
Referenced by _prepareMsg(), _prepareMsgBranch(), _prepareOutgoingArrayMsg(), and cpd_memory_single_pup().
void CmiFreeAligned | ( | void * | ptr | ) |
Definition at line 1136 of file memory.C.
References memalign().
CLINKAGE void* __default_morecore | ( | ptrdiff_t | ) |
char* strdup | ( | const char * | str | ) |
Definition at line 1156 of file memory.C.
References buf, length, and malloc().
Referenced by arg_init(), xi::Array::Array(), TraceBluegene::bgMark(), TraceBluegene::bgPrint(), ArrayElement::ckDebugChareName(), IrrGroup::ckDebugChareName(), Chare::ckDebugChareName(), CkGetFileStripeSize(), CkListString::CkListString(), CkSystem(), CreateLBFunc_Def(), findFirstCaptures(), CkListString::includes(), initHandlerRec(), StringPool::insert(), LBTOPO_MACRO(), main(), mylogin(), pathfix(), xi::Entry::preprocess(), PythonExecute::PythonExecute(), readBlacklist(), xi::SerialConstruct::SerialConstruct(), CkListString::set(), PythonExecute::setCode(), PythonExecute::setMethodName(), TopoLB::work(), and TopoCentLB::work().
char* strndup | ( | const char * | str, | |
size_t | n | |||
) |
void* memory_stack_top |
int cpdInSystem = 1 |
Referenced by cpd_memory_single_pup(), initialize_memory_wrapper(), initialize_memory_wrapper_calloc(), and meta_calloc().
void*(* mm_realloc)(void *, size_t) = initialize_memory_wrapper_realloc |
Referenced by initialize_memory_wrapper(), initialize_memory_wrapper_realloc(), and meta_realloc().
void*(* mm_memalign)(size_t, size_t) = initialize_memory_wrapper_memalign |
int(* mm_posix_memalign)(void **, size_t, size_t) = initialize_memory_wrapper_posix_memalign |
void*(* mm_aligned_alloc)(size_t, size_t) = initialize_memory_wrapper_aligned_alloc |
Referenced by initialize_memory_wrapper(), initialize_memory_wrapper_valloc(), and meta_valloc().
void*(* mm_pvalloc)(size_t) = initialize_memory_wrapper_pvalloc |
Referenced by initialize_memory_wrapper(), initialize_memory_wrapper_pvalloc(), and meta_pvalloc().
void(* mm_free)(void *) = initialize_memory_wrapper_free |
Referenced by cpd_memory_single_pup(), free_nomigrate(), initialize_memory_wrapper(), memory_preallocate_hack(), and meta_free().
void(* mm_cfree)(void *) = initialize_memory_wrapper_cfree |
Referenced by initialize_memory_wrapper(), and meta_cfree().
struct mallinfo(* mm_mallinfo)(void) = NULL |
Referenced by initialize_memory_wrapper().
char fake_malloc_buffer[1024] [static] |
char* fake_malloc_buffer_pos = fake_malloc_buffer [static] |
int rank_holding_CmiMemLock = -1 [static] |
int CmiMemoryIs_flag = 0 [static] |
char* memory_lifeRaft = NULL [static] |
int memory_chare_id = 0 |
void*(* old_malloc_hook)(size_t, const void *) [static] |
Referenced by my_init_hook().
void*(* old_realloc_hook)(void *, size_t, const void *) [static] |
Referenced by my_init_hook().
void*(* old_memalign_hook)(size_t, size_t, const void *) [static] |
Referenced by my_init_hook().
void(* old_free_hook)(void *, const void *) [static] |
Referenced by my_init_hook().
void(* __MALLOC_HOOK_VOLATILE)(void) = my_init_hook |
void(* __malloc_initialize_hook)(void) = my_init_hook |
Referenced by alignas().
int skip_mallinfo = 0 [static] |
int MemusageInited = 0 [static] |
uintptr_t MemusageInitSbrkval = 0 [static] |
struct CmiMemUsageStruct memtest_order[] |
Referenced by CmiMemoryUsage(), and CmiMemoryUsageReporter().
int CmiMemoryInited = 0 [static] |