fpmas-metamodel 1.0
|
#include <output.h>
Public Member Functions | |
MetaModelCsvOutput (BasicMetaModel &meta_model, fpmas::api::utils::perf::Probe &balance_probe, fpmas::api::utils::perf::Probe &distribute_probe, fpmas::api::utils::perf::Probe &local_read_probe, fpmas::api::utils::perf::Probe &local_write_probe, fpmas::api::utils::perf::Probe &distant_read_probe, fpmas::api::utils::perf::Probe &distant_write_probe, fpmas::api::utils::perf::Probe &sync_probe, fpmas::api::utils::perf::Monitor &monitor) | |
const fpmas::scheduler::JobList & | jobs () |
MetaModel CSV output.
The following fields are written by each process to its own CSV file:
TIME
: current time stepBALANCE_TIME
: time required to apply the load balancing algorithm and distributed the model according to the new partition. Includes DISTRIBUTE_TIME.DISTRIBUTE_TIME
: time required to distribute the modelAGENTS
: total weight of LOCAL agentsCELLS
: total weight of LOCAL cellsDISTANT_AGENT_EDGES
: total weight of DISTANT edges between two agents (PERCEPTION)DISTANT_AGENT_CELL_EDGES
: total weight of DISTANT edges between an agent and a cell (LOCATION + PERCEIVE + MOVE)DISTANT_CELL_EDGES
: total weight of DISTANT edges between two cells (CELL_SUCCESSOR)LOCAL_CELL_READ_TIME
: total time spent in read operations between two LOCAL cells.LOCAL_CELL_READ_COUNT
: total count of read operations between two LOCAL cells.LOCAL_CELL_WRITE_TIME
: total time spent in write operations between two LOCAL cells.LOCAL_CELL_WRITE_COUNT
: total count of write operations between two LOCAL cells.DISTANT_CELL_READ_TIME
: total time spent in read operations from a LOCAL to a DISTANT cell.DISTANT_CELL_READ_COUNT
: total count of read operations from a LOCAL to a DISTANT cell.DISTANT_CELL_WRITE_TIME
: total time spent in write operations from a LOCAL to a DISTANT cell.DISTANT_CELL_WRITE_COUNT
: total count of write operations from a LOCAL to a DISTANT cell.CELL_SYNC
: total time spent synchronizing read/write operations between cells. MetaModelCsvOutput::MetaModelCsvOutput | ( | BasicMetaModel & | meta_model, |
fpmas::api::utils::perf::Probe & | balance_probe, | ||
fpmas::api::utils::perf::Probe & | distribute_probe, | ||
fpmas::api::utils::perf::Probe & | local_read_probe, | ||
fpmas::api::utils::perf::Probe & | local_write_probe, | ||
fpmas::api::utils::perf::Probe & | distant_read_probe, | ||
fpmas::api::utils::perf::Probe & | distant_write_probe, | ||
fpmas::api::utils::perf::Probe & | sync_probe, | ||
fpmas::api::utils::perf::Monitor & | monitor | ||
) |
MetaModelCsvOutput constructor.
The name of the output CSV file is set as "[model name].\%r.csv" where %r is the rank of the current process.
meta_model | Model from which data is gathered |
balance_probe | BALANCE_TIME probe |
distribute_probe | DISTRIBUTE_TIME probe |
local_read_probe | LOCAL_CELL_[READ/COUNT]_TIME probe |
local_write_probe | LOCAL_CELL_[WRITE/COUNT]_TIME probe |
distant_read_probe | DISTANT_CELL_[READ/COUNT]_TIME probe |
distant_write_probe | DISTANT_CELL_[WRITE/COUNT]_TIME probe |
sync_probe | CELL_SYNC probe |
monitor | Monitor used to manage probes |
|
inline |
Job to schedule at each iteration to dump CSV data.