PPL Logo

Memory Allocation and Monitoring

This module provides the functions malloc, free, calloc, cfree, realloc, valloc, memalign, and other functions for determining the current and past memory usage. More...

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 *)
CmiIsomallocBlockListCmiIsomallocBlockListActivate (CmiIsomallocBlockList *l)
CmiIsomallocBlockListCmiIsomallocBlockListCurrent (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

Detailed Description

This module provides the functions malloc, free, calloc, cfree, realloc, valloc, memalign, and other functions for determining the current and past memory usage.

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 Documentation

typedef CMK_TYPEDEF_UINT8(* CmiMemUsageFn)(void)

Definition at line 567 of file memory.C.


Function Documentation

void initialize_memory_wrapper ( void   ) 

void * initialize_memory_wrapper_calloc ( size_t  nelem,
size_t  size 
)

Definition at line 164 of file memory.C.

References fake_calloc(), initialize_memory_wrapper(), and mm_calloc.

Here is the call graph for this function:

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.

Here is the call graph for this function:

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.

Here is the call graph for this function:

void * initialize_memory_wrapper_memalign ( size_t  align,
size_t  size 
)

Definition at line 183 of file memory.C.

References initialize_memory_wrapper(), and mm_memalign.

Here is the call graph for this function:

int initialize_memory_wrapper_posix_memalign ( void **  memptr,
size_t  align,
size_t  size 
)

Definition at line 188 of file memory.C.

References initialize_memory_wrapper(), and mm_posix_memalign.

Here is the call graph for this function:

void * initialize_memory_wrapper_aligned_alloc ( size_t  align,
size_t  size 
)

Definition at line 193 of file memory.C.

References initialize_memory_wrapper(), and mm_aligned_alloc.

Here is the call graph for this function:

void * initialize_memory_wrapper_valloc ( size_t  size  ) 

Definition at line 198 of file memory.C.

References initialize_memory_wrapper(), and mm_valloc.

Here is the call graph for this function:

void * initialize_memory_wrapper_pvalloc ( size_t  size  ) 

Definition at line 203 of file memory.C.

References initialize_memory_wrapper(), and mm_pvalloc.

Here is the call graph for this function:

void initialize_memory_wrapper_free ( void *  ptr  ) 

Definition at line 208 of file memory.C.

References initialize_memory_wrapper().

Here is the call graph for this function:

void initialize_memory_wrapper_cfree ( void *  ptr  ) 

Definition at line 215 of file memory.C.

References initialize_memory_wrapper().

Here is the call graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

static void* fake_calloc ( size_t  nelem,
size_t  size 
) [static]

Definition at line 149 of file memory.C.

References fake_malloc().

Referenced by initialize_memory_wrapper_calloc().

Here is the call graph for this function:

Here is the caller graph for this function:

static void fake_free ( void *  ptr  )  [static]

Definition at line 157 of file memory.C.

int CmiMemoryIs ( int  flag  ) 

void CmiOutOfMemoryInit ( void   ) 

Definition at line 1013 of file memory.C.

References CmiMyRank(), memory_preallocate_hack(), and mm_malloc.

Referenced by CmiMemoryInit().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

static void* meta_malloc ( size_t  size  )  [static]

Definition at line 27 of file memory-lock.C.

References CmiOutOfMemory(), and mm_malloc.

Here is the call graph for this function:

static void* meta_realloc ( void *  mem,
size_t  size 
) [static]

Definition at line 53 of file memory-lock.C.

References mm_realloc.

static void* meta_memalign ( size_t  align,
size_t  size 
) [static]

Definition at line 60 of file memory-lock.C.

References CmiOutOfMemory(), and mm_memalign.

Here is the call graph for this function:

static void meta_free ( void *  mem  )  [static]

Definition at line 35 of file memory-lock.C.

References mm_free.

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

static void* meta_memalign_hook ( size_t  s1,
size_t  s2,
const void *  c 
) [static]

Definition at line 307 of file memory.C.

References meta_memalign().

Referenced by my_init_hook().

Here is the call graph for this function:

Here is the caller graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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.

Here is the call graph for this function:

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

void * calloc ( size_t  nelem,
size_t  size 
)

void cfree ( void *  ptr  ) 

Definition at line 386 of file memory.C.

References meta_cfree().

Here is the call graph for this function:

void * realloc ( void *  ptr,
size_t  size 
)

CLINKAGE void * memalign ( size_t  align,
size_t  size 
)

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().

Here is the call graph for this function:

Here is the caller graph for this function:

CLINKAGE int posix_memalign ( void **  outptr,
size_t  align,
size_t  size 
)

Definition at line 389 of file memory.C.

References meta_posix_memalign(), and size.

Referenced by PPC_AtomicCounterAllocate(), and PPCAtomicQueueInit().

Here is the call graph for this function:

Here is the caller graph for this function:

CLINKAGE void * aligned_alloc ( size_t  align,
size_t  size 
)

Definition at line 390 of file memory.C.

References meta_aligned_alloc(), and size.

Here is the call graph for this function:

void * valloc ( size_t  size  ) 

Definition at line 391 of file memory.C.

References meta_valloc(), and size.

Here is the call graph for this function:

void * pvalloc ( size_t  size  ) 

Definition at line 392 of file memory.C.

References meta_pvalloc(), and size.

Here is the call graph for this function:

void CmiMemoryInit ( char **  argv  ) 

Definition at line 406 of file memory.C.

References CmiArgGroup(), CmiMyRank(), CmiNodeAllBarrier(), CmiOutOfMemoryInit(), and meta_init().

Referenced by ConverseCommonInit().

Here is the call graph for this function:

Here is the caller graph for this function:

CLINKAGE void* malloc_reentrant ( size_t  size  ) 

CLINKAGE void free_reentrant ( void *  mem  ) 

static INLINE CMK_TYPEDEF_UINT8 MemusageMstats ( void   )  [static]

Definition at line 442 of file memory.C.

static INLINE CMK_TYPEDEF_UINT8 MemusageSbrk ( void   )  [static]

Definition at line 453 of file memory.C.

References sbrk().

Here is the call graph for this function:

static INLINE CMK_TYPEDEF_UINT8 MemusageProcSelfStat ( void   )  [static]

Definition at line 470 of file memory.C.

static INLINE CMK_TYPEDEF_UINT8 MemusageMallinfo ( void   )  [static]

Definition at line 488 of file memory.C.

static INLINE CMK_TYPEDEF_UINT8 MemusagePS ( void   )  [static]

Definition at line 517 of file memory.C.

References p.

static CMK_TYPEDEF_UINT8 MemusageWindows ( void   )  [static]

Definition at line 539 of file memory.C.

static CMK_TYPEDEF_UINT8 MemusageBGQ ( void   )  [static]

Definition at line 556 of file memory.C.

CMK_TYPEDEF_UINT8 CmiMemoryUsage ( void   ) 

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   ) 

Definition at line 609 of file memory.C.

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

CMK_TYPEDEF_UINT8 CmiMinMemoryUsage ( void   ) 

Definition at line 622 of file memory.C.

void CmiResetMinMemory ( void   ) 

Definition at line 623 of file memory.C.

static void meta_init ( char **  argv  )  [static]

Definition at line 647 of file memory.C.

References CmiMyRank().

Here is the call graph for this function:

static void* meta_calloc ( size_t  nelem,
size_t  size 
) [static]

Definition at line 692 of file memory.C.

References mm_calloc.

static void meta_cfree ( void *  mem  )  [static]

Definition at line 696 of file memory.C.

References PUP::m, and mm_cfree.

static int meta_posix_memalign ( void **  outptr,
size_t  align,
size_t  size 
) [static]

Definition at line 708 of file memory.C.

References mm_posix_memalign.

static void* meta_aligned_alloc ( size_t  align,
size_t  size 
) [static]

Definition at line 712 of file memory.C.

References mm_aligned_alloc.

static void* meta_valloc ( size_t  size  )  [static]

Definition at line 716 of file memory.C.

References mm_valloc.

static void* meta_pvalloc ( size_t  size  )  [static]

Definition at line 720 of file memory.C.

References mm_pvalloc.

CLINKAGE void* malloc_nomigrate ( size_t  size  ) 

Definition at line 228 of file memory-isomalloc.C.

References CmiMemLock(), CmiMemUnlock(), and mm_malloc.

Here is the call graph for this function:

CLINKAGE void free_nomigrate ( void *  mem  ) 

Definition at line 236 of file memory-isomalloc.C.

References CmiMemLock(), CmiMemUnlock(), and mm_free.

Here is the call graph for this function:

CmiIsomallocBlockList* CmiIsomallocBlockListActivate ( CmiIsomallocBlockList l  ) 

Definition at line 973 of file memory.C.

References PUP::s.

CmiIsomallocBlockList* CmiIsomallocBlockListCurrent ( void   ) 

Definition at line 975 of file memory.C.

void CmiEnableIsomalloc ( void   ) 

Definition at line 978 of file memory.C.

void CmiDisableIsomalloc ( void   ) 

Definition at line 979 of file memory.C.

void CmiMemoryMark ( void   ) 

Definition at line 983 of file memory.C.

Referenced by CmiMemorySweep().

Here is the caller graph for this function:

void CmiMemoryMarkBlock ( void *  blk  ) 

Definition at line 984 of file memory.C.

Referenced by CkArrayBroadcaster::incoming().

Here is the caller graph for this function:

void CmiMemorySweep ( const char *  where  ) 

Definition at line 985 of file memory.C.

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   ) 

Definition at line 989 of file memory.C.

References len, mm_free, and mm_malloc.

Referenced by CmiOutOfMemoryInit().

Here is the caller graph for this function:

void CpdSetInitializeMemory ( int  v  ) 

Definition at line 1024 of file memory.C.

Referenced by CkMessageWatcherInit(), and cpd_memory_single_pup().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

void cpd_memory_pup ( void *  itemParam,
pup_er  p,
CpdListItemsRequest req 
)

Definition at line 1026 of file memory.C.

void cpd_memory_leak ( void *  itemParam,
pup_er  p,
CpdListItemsRequest req 
)

Definition at line 1027 of file memory.C.

void check_memory_leaks ( LeakSearchInfo i  ) 

Definition at line 1028 of file memory.C.

Referenced by cpd_memory_single_pup(), and ntohl().

Here is the caller graph for this function:

size_t cpd_memory_getLength ( void *  lenParam  ) 

Definition at line 1029 of file memory.C.

Referenced by cpd_memory_single_pup(), and CpdCharmInit().

Here is the caller graph for this function:

void cpd_memory_get ( void *  itemParam,
pup_er  p,
CpdListItemsRequest req 
)

Definition at line 1030 of file memory.C.

void CpdMemoryMarkClean ( char *  msg  ) 

Definition at line 1031 of file memory.C.

Referenced by cpd_memory_single_pup(), and ntohl().

Here is the caller graph for this function:

void setProtection ( char *  mem,
char *  ptr,
int  len,
int  flag 
)

Definition at line 1034 of file memory.C.

Referenced by cpd_memory_single_pup().

Here is the caller graph for this function:

void setMemoryTypeChare ( void *  ptr  ) 

Definition at line 1039 of file memory.C.

Referenced by _allocNewChare(), CkArray::allocate(), CkCreateLocalGroup(), CkCreateLocalNodeGroup(), and cpd_memory_single_pup().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

void CpdSystemEnter ( void   ) 

Definition at line 1044 of file memory.C.

Referenced by CmiError(), CmiPrintf(), cpd_memory_single_pup(), and CpdAfterEp().

Here is the caller graph for this function:

void CpdSystemExit ( void   ) 

Definition at line 1045 of file memory.C.

Referenced by CmiError(), CmiPrintf(), cpd_memory_single_pup(), and CpdBeforeEp().

Here is the caller graph for this function:

void CpdResetMemory ( void   ) 

Definition at line 1047 of file memory.C.

Referenced by cpd_memory_single_pup(), and CpdBeforeEp().

Here is the caller graph for this function:

void CpdCheckMemory ( void   ) 

Definition at line 1048 of file memory.C.

Referenced by cpd_memory_single_pup(), and CpdAfterEp().

Here is the caller graph for this function:

int get_memory_allocated_user_total ( void   ) 

Definition at line 1050 of file memory.C.

Referenced by TraceMemory::traceBegin().

Here is the caller graph for this function:

void* MemoryToSlot ( void *  ptr  ) 

Definition at line 1051 of file memory.C.

Referenced by cpd_memory_single_pup(), and CpdNotify().

Here is the caller graph for this function:

int Slot_ChareOwner ( void *  s  ) 

Definition at line 1052 of file memory.C.

int Slot_AllocatedSize ( void *  s  ) 

Definition at line 1053 of file memory.C.

int Slot_StackTrace ( void *  s,
void ***  stack 
)

Definition at line 1054 of file memory.C.

int setMemoryChareIDFromPtr ( void *  ptr  ) 

Definition at line 1058 of file memory.C.

Referenced by cpd_memory_single_pup(), and CpdBeforeEp().

Here is the caller graph for this function:

void setMemoryChareID ( int  id  ) 

Definition at line 1062 of file memory.C.

Referenced by cpd_memory_single_pup(), and CpdAfterEp().

Here is the caller graph for this function:

void setMemoryOwnedBy ( void *  ptr,
int  id 
)

Definition at line 1066 of file memory.C.

Referenced by _prepareMsg(), _prepareMsgBranch(), _prepareOutgoingArrayMsg(), and cpd_memory_single_pup().

Here is the caller graph for this function:

void* CmiMallocAligned ( const size_t  size,
const unsigned int  alignment 
)

Definition at line 1078 of file memory.C.

References malloc(), and offset.

Here is the call graph for this function:

void CmiFreeAligned ( void *  ptr  ) 

Definition at line 1115 of file memory.C.

References free(), and offset.

Here is the call graph for this function:

CLINKAGE void* __libc_memalign ( size_t  alignment,
size_t  bytes 
)

Definition at line 1136 of file memory.C.

References memalign().

Here is the call graph for this function:

CLINKAGE void* __default_morecore ( ptrdiff_t   ) 

Definition at line 1139 of file memory.C.

References value.

CLINKAGE int mallopt ( int  param_number,
int  value 
)

Definition at line 1147 of file memory.C.

CLINKAGE void __malloc_fork_lock_parent ( void   ) 

Definition at line 1150 of file memory.C.

CLINKAGE void __malloc_fork_unlock_parent ( void   ) 

Definition at line 1151 of file memory.C.

CLINKAGE void __malloc_fork_unlock_child ( void   ) 

Definition at line 1152 of file memory.C.

char* strdup ( const char *  str  ) 

char* strndup ( const char *  str,
size_t  n 
)

Definition at line 1168 of file memory.C.

References buf, length, and malloc().

Here is the call graph for this function:


Variable Documentation

Definition at line 73 of file memory.C.

Referenced by charm_main(), and cpd_memory_single_pup().

Definition at line 74 of file memory.C.

Referenced by cpd_memory_single_pup(), and CpdInUserCode().

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

char fake_malloc_buffer[1024] [static]

Definition at line 128 of file memory.C.

Definition at line 129 of file memory.C.

Definition at line 245 of file memory.C.

Referenced by alignas().

Definition at line 246 of file memory.C.

Definition at line 247 of file memory.C.

Definition at line 252 of file memory.C.

int CmiMemoryIs_flag = 0 [static]

Definition at line 255 of file memory.C.

Referenced by cpd_memory_single_pup(), and meta_init().

char* memory_lifeRaft = NULL [static]

memory_lifeRaft is a very small heap-allocated region.

The lifeRaft is supposed to be just big enough to provide enough memory to cleanly shut down if we run out of memory.

Definition at line 267 of file memory.C.

Definition at line 281 of file memory.C.

Referenced by cpd_memory_single_pup().

Definition at line 282 of file memory.C.

Referenced by cpd_memory_single_pup().

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]

Definition at line 404 of file memory.C.

int MemusageInited = 0 [static]

Definition at line 451 of file memory.C.

Definition at line 452 of file memory.C.

int CmiMemoryInited = 0 [static]

Definition at line 730 of file memory.C.


Generated on Mon Sep 21 08:15:10 2020 for Charm++ by  doxygen 1.5.5