MulticoreBSP for C
Version 1.1
|
Structure representing the machine hardware information. More...
#include <mcutil.h>
Data Fields | |
bool | Tset |
Whether the threads field has been set manually. | |
bool | Aset |
Whether the affinity field as been set manually. | |
bool | Cset |
Whether the cores field has been set manually. | |
bool | TpCset |
Whether the threads_per_core field has been set manually. | |
bool | TNset |
Whether the thread numbering field has been set manually. | |
bool | Pset |
Whether the manual pinning field has been set. | |
bool | Rset |
Whether the reserved cores field has been set. | |
size_t | threads |
The total number of threads available for computation. | |
enum mcbsp_affinity_mode | affinity |
Currently active affinity strategy. | |
size_t | cores |
The number of hardware cores available on the current system. | |
size_t | threads_per_core |
The number of hardware threads per core on the system MulticoreBSP is executing on. | |
enum mcbsp_thread_numbering | thread_numbering |
Currently active thread-numbering method. | |
size_t * | manual_affinity |
Pointer to the manually-defined affinity definition. | |
size_t | num_reserved_cores |
Number of entries in the reserved_cores array. | |
size_t * | reserved_cores |
Pointer to the manually-defined reversed-cores list. |
Structure representing the machine hardware information.
enum mcbsp_affinity_mode mcbsp_util_machine_info::affinity |
Currently active affinity strategy.
bool mcbsp_util_machine_info::Aset |
Whether the affinity field as been set manually.
size_t mcbsp_util_machine_info::cores |
The number of hardware cores available on the current system.
MulticoreBSP can not (as of yet) determine this information reliably by itself. A user can set this value manually at run-time via mcbsp_set_available_cores, or supply a value via `machine.info'.
bool mcbsp_util_machine_info::Cset |
Whether the cores field has been set manually.
size_t* mcbsp_util_machine_info::manual_affinity |
Pointer to the manually-defined affinity definition.
Required when MCBSP_AFFINITY is set to MANUAL.
The list should be of length threads, and consist out of unique numbers between 0 and threads-1 (inclusive), where C is the number of available hardware threads on the current machine.
size_t mcbsp_util_machine_info::num_reserved_cores |
Number of entries in the reserved_cores array.
bool mcbsp_util_machine_info::Pset |
Whether the manual pinning field has been set.
size_t* mcbsp_util_machine_info::reserved_cores |
Pointer to the manually-defined reversed-cores list.
This list is of length <= cores, and contains unique entries in-between 0 and cores-1 (inclusive). It represents the core-IDs that are reserved by the system (or other software), thus forbidding MulticoreBSP to pin threads to that core.
bool mcbsp_util_machine_info::Rset |
Whether the reserved cores field has been set.
enum mcbsp_thread_numbering mcbsp_util_machine_info::thread_numbering |
Currently active thread-numbering method.
size_t mcbsp_util_machine_info::threads |
The total number of threads available for computation.
size_t mcbsp_util_machine_info::threads_per_core |
The number of hardware threads per core on the system MulticoreBSP is executing on.
bool mcbsp_util_machine_info::TNset |
Whether the thread numbering field has been set manually.
bool mcbsp_util_machine_info::TpCset |
Whether the threads_per_core field has been set manually.
bool mcbsp_util_machine_info::Tset |
Whether the threads field has been set manually.