The main function of a Charm++ executable. See the Parallelization documentation for an overview of Metavariables, Phases, and parallel components.
More...
#include <Main.hpp>
|
|
using | component_list = typename Metavariables::component_list |
| |
|
using | const_global_cache_tags = get_const_global_cache_tags< Metavariables > |
| |
|
using | mutable_global_cache_tags = get_mutable_global_cache_tags< Metavariables > |
| |
|
using | phase_change_tags_and_combines_list = detail::get_phase_change_tags_and_combines_list_or_default_t< Metavariables, tmpl::list<> > |
| |
|
| | Main (CkArgMsg *msg) noexcept |
| |
|
| Main (CkMigrateMessage *msg) noexcept |
| |
|
void | pup (PUP::er &p) noexcept override |
| |
|
void | allocate_array_components_and_execute_initialization_phase () noexcept |
| | Allocate the initial elements of array components, and then execute the initialization phase on each component.
|
| |
|
void | execute_next_phase () noexcept |
| | Determine the next phase of the simulation and execute it.
|
| |
| void | start_load_balance () noexcept |
| | Place the Charm++ call that starts load balancing. More...
|
| |
| void | start_write_checkpoint () noexcept |
| | Place the Charm++ call that starts writing a checkpoint. More...
|
| |
| template<typename InvokeCombine , typename... Tags> |
| void | phase_change_reduction (ReductionData< ReductionDatum< tuples::TaggedTuple< Tags... >, InvokeCombine, funcl::Identity, std::index_sequence<> > > reduction_data) noexcept |
| | Reduction target for data used in phase change decisions. More...
|
| |
template<typename Metavariables>
class Parallel::Main< Metavariables >
The main function of a Charm++ executable. See the Parallelization documentation for an overview of Metavariables, Phases, and parallel components.
◆ Main()
template<typename Metavariables >
◆ phase_change_reduction()
template<typename Metavariables >
template<typename InvokeCombine , typename... Tags>
Reduction target for data used in phase change decisions.
It is required that the Parallel::ReductionData holds a single tuples::TaggedTuple.
◆ start_load_balance()
template<typename Metavariables >
Place the Charm++ call that starts load balancing.
Details
This call is wrapped within an entry method so that it may be used as the callback after a quiescence detection.
◆ start_write_checkpoint()
template<typename Metavariables >
Place the Charm++ call that starts writing a checkpoint.
Details
This call is wrapped within an entry method so that it may be used as the callback after a quiescence detection.