MP-Gadget
5.0.1.dev1-76bc7d4726-dirty
|
Go to the source code of this file.
Classes | |
struct | topnode_data |
struct | topleaf_data |
struct | task_data |
struct | DomainDecomp |
struct | DomainParams |
Typedefs | |
typedef struct DomainDecomp | DomainDecomp |
typedef struct DomainParams | DomainParams |
Functions | |
void | set_domain_params (ParameterSet *ps) |
void | set_domain_par (DomainParams dp) |
void | domain_decompose_full (DomainDecomp *ddecomp) |
void | domain_maintain (DomainDecomp *ddecomp, struct DriftData *drift) |
static int | domain_get_topleaf (const peano_t key, const DomainDecomp *ddecomp) |
void | domain_free (DomainDecomp *ddecomp) |
typedef struct DomainDecomp DomainDecomp |
typedef struct DomainParams DomainParams |
void domain_decompose_full | ( | DomainDecomp * | ddecomp | ) |
This is the main routine for the domain decomposition. It acts as a driver routine that allocates various temporary buffers, maps the particles back onto the periodic box if needed, and then does the domain decomposition, and a final Peano-Hilbert order of all particles as a tuning measure.
Definition at line 155 of file domain.c.
References domain_allocate(), domain_attempt_decompose(), domain_balance(), domain_exchange(), domain_free(), domain_layoutfunc(), domain_policies_init(), domain_test_id_uniqueness(), DomainDecomp::DomainComm, endrun(), message(), MPIU_Any(), MPIU_Barrier, myfree, mymalloc2, mymalloc_usedbytes, DomainDecomp::NTopLeaves, DomainDecomp::NTopNodes, PartManager, report_memory_usage, slots_gc_sorted(), SlotsManager, DomainDecomp::TopLeaves, DomainDecomp::TopNodes, and walltime_measure.
Referenced by begrun(), do_force_test(), domain_maintain(), run(), run_gravity_test(), runfof(), runpower(), and test_fof().
void domain_free | ( | DomainDecomp * | ddecomp | ) |
Definition at line 320 of file domain.c.
References DomainDecomp::domain_allocated_flag, myfree, DomainDecomp::Tasks, DomainDecomp::TopLeaves, and DomainDecomp::TopNodes.
Referenced by begrun(), do_force_test(), domain_decompose_full(), and run_gravity_test().
|
inlinestatic |
This function determines the TopLeaves entry for the given key.
Definition at line 74 of file domain.h.
References topnode_data::Daughter, topnode_data::Leaf, topnode_data::Shift, topnode_data::StartKey, and DomainDecomp::TopNodes.
Referenced by domain_compute_costs(), domain_layoutfunc(), and force_tree_create_nodes().
void domain_maintain | ( | DomainDecomp * | ddecomp, |
struct DriftData * | drift | ||
) |
Definition at line 234 of file domain.c.
References domain_decompose_full(), domain_exchange(), domain_layoutfunc(), DomainDecomp::DomainComm, message(), PartManager, SlotsManager, and walltime_measure.
Referenced by run().
void set_domain_par | ( | DomainParams | dp | ) |
Definition at line 78 of file domain.c.
References domain_params.
Referenced by setup_tree(), and test_fof().
void set_domain_params | ( | ParameterSet * | ps | ) |
Definition at line 84 of file domain.c.
References domain_params, DomainParams::DomainOverDecompositionFactor, DomainParams::DomainUseGlobalSorting, param_get_double(), param_get_int(), DomainParams::SetAsideFactor, ThisTask, and DomainParams::TopNodeAllocFactor.
Referenced by read_parameter_file().