UMPIRE
Umpire: resource management and provision
Umpire.hpp File Reference
#include <iostream>
#include <string>
#include "camp/camp.hpp"
#include "umpire/Allocator.hpp"
#include "umpire/ResourceManager.hpp"
#include "umpire/config.hpp"
#include "umpire/resource/MemoryResourceRegistry.hpp"
#include "umpire/util/AllocationRecord.hpp"
#include "umpire/util/MPI.hpp"
#include "umpire/util/io.hpp"

Namespaces

 umpire
 

Functions

void umpire::initialize ()
 
void umpire::finalize ()
 
void * umpire::malloc (std::size_t size)
 Allocate memory in the default space, with the default allocator. More...
 
void umpire::free (void *ptr)
 Free any memory allocated with Umpire. More...
 
int umpire::get_major_version ()
 
int umpire::get_minor_version ()
 
int umpire::get_patch_version ()
 
std::string umpire::get_rc_version ()
 
void umpire::print_allocator_records (Allocator allocator, std::ostream &os=std::cout)
 Print the allocations from a specific allocator in a human-readable format. More...
 
std::vector< util::AllocationRecord > umpire::get_allocator_records (Allocator allocator)
 Returns vector of AllocationRecords created by the allocator. More...
 
bool umpire::pointer_overlaps (void *left, void *right)
 Check whether the right allocation overlaps the left. More...
 
bool umpire::pointer_contains (void *left, void *right)
 Check whether the left allocation contains the right. More...
 
bool umpire::is_accessible (Platform p, Allocator a)
 Check whether or not an Allocator is accessible from a given platform. More...
 
std::string umpire::get_backtrace (void *ptr)
 Get the backtrace associated with the allocation of ptr. More...
 
std::size_t umpire::get_process_memory_usage ()
 Get memory usage of the current process (uses underlying system-dependent calls) More...
 
std::size_t umpire::get_process_memory_usage_hwm ()
 Get high watermark memory usage of the current process (uses underlying system-dependent calls) More...
 
std::size_t umpire::get_internal_memory_usage ()
 Get the current memory usage for internal Umpire data structures. More...
 
void umpire::mark_event (const std::string &event)
 Mark an application-specific event string within Umpire life cycle. More...
 
std::size_t umpire::get_total_bytes_allocated ()
 Get the total umpire memory usage in bytes across all memory resources. More...
 
std::size_t umpire::get_device_memory_usage (int device_id)
 Get memory usage of device device_id, using appropriate underlying vendor API. More...
 
std::vector< util::AllocationRecord > umpire::get_leaked_allocations (Allocator allocator)
 Get all the leaked (active) allocations associated with allocator. More...
 
umpire::MemoryResourceTraits umpire::get_default_resource_traits (const std::string &name)
 Return the default traits for the given allocator string. More...
 
void * umpire::find_pointer_from_name (Allocator allocator, const std::string &name)
 Return the pointer of an allocation for the given allocator and name. More...
 
void umpire::register_external_allocation (void *ptr, util::AllocationRecord record)
 
util::AllocationRecord umpire::deregister_external_allocation (void *ptr)
 
camp::resources::Resource umpire::get_resource (Allocator a, void *ptr)
 Returns the Camp resource associated with a particular allocation This function is used mainly for testing purposes. More...
 
std::size_t umpire::get_num_pending (Allocator a)
 Returns the number of pending chunks associated with a ResourceAwarePool Allocator This function is used mainly for testing purposes. More...
 
bool umpire::try_coalesce (Allocator a)
 Attempt to coalesce Allocator a, return true if a coalesce was performed. More...
 
void umpire::coalesce (Allocator a)
 Attempt to coalesce Allocator a, throw if a does not support coalescing. More...