MADNESS 0.10.1
|
Procmap implemented using Tree of TreeCoords. More...
#include <mypmap.h>
Public Member Functions | |
MyPmap () | |
MyPmap (const MyPmap< D > &other) | |
MyPmap (World &world) | |
MyPmap (World &world, std::vector< TreeCoords< D > > v) | |
MyPmap (World &world, unsigned int map_type, int n=100) | |
MyPmap< D > & | operator= (const MyPmap< D > &other) |
ProcessID | owner (const KeyD &key) const |
Find the owner of a given key. | |
void | print () const |
Public Member Functions inherited from madness::WorldDCPmapInterface< Key< D > > | |
virtual | ~WorldDCPmapInterface () |
void | deregister_callback (ptrT ptr) |
Deregisters object for receipt of redistribute callbacks. | |
std::size_t | global_size (World &world) const |
Counts global number of entries in all containers associated with this process map. | |
std::size_t | local_size () const |
Counts local number of entries in all containers associated with this process map. | |
void | print_data_sizes (World &world, const std::string msg="") const |
Prints size info to std::cout. | |
void | redistribute (World &world, const std::shared_ptr< WorldDCPmapInterface< Key< D > > > &newpmap) |
Invoking this switches all registered objects from this process map to the new one. | |
void | register_callback (ptrT ptr) |
Registers object for receipt of redistribute callbacks. | |
Static Public Member Functions | |
static bool | costmapcmp (const std::pair< KeyD, double > &a, const std::pair< KeyD, double > &b) |
Private Types | |
typedef Key< D > | KeyD |
Private Member Functions | |
void | build_tree_map (std::vector< TreeCoords< D > > v) |
private method that builds the Tree underlying the procmap | |
ProcessID | not_so_simple_hash (const KeyD &key) const |
void | prepare_not_so_simple_map (World &world) |
ProcessID | simple_hash (const KeyD &key) const |
Private Attributes | |
unsigned int | map_type |
const int | n |
const int | nproc |
Tensor< ProcessID > | simple_key_map |
std::shared_ptr< ProcMapImpl< D > > | tree_map |
Additional Inherited Members | |
Public Types inherited from madness::WorldDCPmapInterface< Key< D > > | |
typedef WorldDCRedistributeInterface< Key< D > > * | ptrT |
Procmap implemented using Tree of TreeCoords.
|
private |
|
inline |
|
inline |
|
inline |
References madness::World::size().
|
inline |
References v.
|
inline |
|
inlineprivate |
private method that builds the Tree underlying the procmap
References v.
|
inlinestatic |
|
inlineprivate |
|
inlinevirtual |
Find the owner of a given key.
Implements madness::WorldDCPmapInterface< Key< D > >.
|
inlineprivate |
References dist(), p(), madness::World::size(), and madness::Tensor< T >::unary_iterator().
|
inlinevirtual |
Reimplemented from madness::WorldDCPmapInterface< Key< D > >.
References madness::print().
|
inlineprivate |
|
private |
Referenced by madness::MyPmap< D >::operator=().
|
private |
Referenced by madness::MyPmap< D >::operator=().
|
private |
Referenced by madness::MyPmap< D >::operator=().
|
private |
Referenced by madness::MyPmap< D >::operator=().
|
private |
Referenced by madness::MyPmap< D >::operator=().