The context type provides a high-level execution context interface that is implemented by a specific backend.
More...
|
Color | color () const |
| Get the color of the current point task.
|
|
Color | colors () const |
| Get the number of colors.
|
|
unsigned & | flog_task_count () |
| Return the count of executed tasks.
|
|
unsigned const & | flog_task_count () const |
| Return the count of executed tasks (const version).
|
|
Color | process () const |
| Return the current process id.
|
|
Color | processes () const |
| Return the number of processes.
|
|
int | start (const std::function< int()> &action, bool check_args) |
| Start the FleCSI runtime.
|
|
auto & | task_names () |
| Return map containing the short and full signature of all registered tasks.
|
|
Color | threads () const |
| Return the number of execution instances with which the runtime was invoked.
|
|
Color | threads_per_process () const |
| Return the number of threads per process.
|
|
|
template<class Topo , typename Topo::index_space Index, typename Field > |
static void | add_field_info (field_id_t id) |
| Register field information.
|
|
template<class Topo , typename Topo::index_space Index = Topo::default_space()> |
static field_info_store_t const & | field_info_store () |
| Return the stored field info for the given topology type and layout (const version).
|
|
static int | task_depth () |
| Return the current task depth within the execution hierarchy.
|
|
The context type provides a high-level execution context interface that is implemented by a specific backend.
◆ start()
int start |
( |
const std::function< int()> & | action, |
|
|
bool | check_args ) |
|
nodiscard |
Start the FleCSI runtime.
- Parameters
-
action | The top-level action FleCSI should execute. |
check_args | trap unrecognized backend configuration arguments |
- Returns
- An integer with 0 being success, and any other value being failure.
◆ process()
Return the current process id.
◆ processes()
Color processes |
( |
| ) |
const |
Return the number of processes.
◆ threads_per_process()
Color threads_per_process |
( |
| ) |
const |
Return the number of threads per process.
◆ threads()
Return the number of execution instances with which the runtime was invoked.
In this context a thread is defined as an instance of execution, and does not imply any other properties. This interface can be used to determine the full subscription of the execution instances of the running process that invoked the FleCSI runtime.
◆ task_names()
Return map containing the short and full signature of all registered tasks.
◆ task_depth()
static int task_depth |
( |
| ) |
|
|
static |
Return the current task depth within the execution hierarchy.
The top-level task has depth 0. This interface is primarily intended for FleCSI developers to use in enforcing runtime constraints.
◆ color()
Get the color of the current point task.
◆ colors()
Get the number of colors.
◆ add_field_info()
template<class Topo , typename Topo::index_space Index, typename Field >
static void add_field_info |
( |
field_id_t | id | ) |
|
|
static |
Register field information.
- Template Parameters
-
Topo | topology type |
Index | topology-relative index space |
Field | field data type |
- Parameters
-
◆ field_info_store()
template<class Topo , typename Topo::index_space Index = Topo::default_space()>
static field_info_store_t const & field_info_store |
( |
| ) |
|
|
static |
Return the stored field info for the given topology type and layout (const
version).
- Template Parameters
-
Topo | topology type |
Index | topology-relative index space |
◆ flog_task_count() [1/2]
unsigned const & flog_task_count |
( |
| ) |
const |
Return the count of executed tasks (const
version).
◆ flog_task_count() [2/2]
unsigned & flog_task_count |
( |
| ) |
|
Return the count of executed tasks.