std::unordered_map<smpi_source_location, shared_data_t, std::hash<std::string>> allocs;
typedef decltype(allocs)::value_type shared_data_key_type;
std::unordered_map<smpi_source_location, shared_data_t, std::hash<std::string>> allocs;
typedef decltype(allocs)::value_type shared_data_key_type;
size_t size;
size_t allocated_size;
void *allocated_ptr;
std::vector<std::pair<size_t, size_t>> private_blocks;
shared_data_key_type* data;
size_t size;
size_t allocated_size;
void *allocated_ptr;
std::vector<std::pair<size_t, size_t>> private_blocks;
shared_data_key_type* data;
std::map<void*, shared_metadata_t> allocs_metadata;
std::map<std::string, void*> calls;
std::map<void*, shared_metadata_t> allocs_metadata;
std::map<std::string, void*> calls;