|
Lightweight Parallel Foundations 1.0.1-alpha 2023-06-26T11:02:34Z
A high performance and model-compliant communication layer
|
#include <bsmp.h>
Public Attributes | |
| size_t | buffer_size |
| size_t | tag_size |
| size_t | queued |
| size_t *restrict | remote_pos |
| size_t *restrict | local_pos |
| size_t *restrict | headers |
| char *restrict | message_queue |
| lpf_memslot_t | in_slot |
| lpf_memslot_t | out_slot |
| lpf_memslot_t | rpos_slot |
| lpf_memslot_t | lpos_slot |
| lpf_pid_t | s |
| lpf_pid_t | p |
| lpf_pid_t | pid_pos |
| enum lpf_bsmp_mode | mode |
| lpf_t | ctx |
All information required by a BSMP object.
| size_t lpf_bsmp_buffer::buffer_size |
The currently active local buffer size, in bytes.
| size_t lpf_bsmp_buffer::tag_size |
The currently active tag size, in bytes.
| size_t lpf_bsmp_buffer::queued |
The number of out-bound messages currently queued.
| size_t* restrict lpf_bsmp_buffer::remote_pos |
Array that keeps track of remote positions of messages to be sent out.
| size_t* restrict lpf_bsmp_buffer::local_pos |
Array that keeps track of local positions of messages to be read.
| size_t* restrict lpf_bsmp_buffer::headers |
Array that holds a header info for each out-bound message.
| char* restrict lpf_bsmp_buffer::message_queue |
The message inbox queue.
| lpf_memslot_t lpf_bsmp_buffer::in_slot |
Globally registered slot to the message queue.
| lpf_memslot_t lpf_bsmp_buffer::out_slot |
Locally registered slot to the headers.
| lpf_memslot_t lpf_bsmp_buffer::rpos_slot |
Locally registered slot to the remote_pos array.
| lpf_memslot_t lpf_bsmp_buffer::lpos_slot |
Globally registered slot to the local_pos array.
| lpf_pid_t lpf_bsmp_buffer::s |
The process ID this BSMP buffer belongs to.
| lpf_pid_t lpf_bsmp_buffer::p |
The number of processes involved in the current SPMD run.
| lpf_pid_t lpf_bsmp_buffer::pid_pos |
From which process the next incoming message is to be read from.
| enum lpf_bsmp_mode lpf_bsmp_buffer::mode |
The current mode of the BSMP queue.
| lpf_t lpf_bsmp_buffer::ctx |
The LPF runtime state as given via lpf_bsmp_create().