BioCMAMC-ST
execinfo.hpp
1#ifndef __EXEC_INFO_HPP__
2#define __EXEC_INFO_HPP__
3
4#include <biocma_cst_config.hpp>
5#include <common/has_serialize.hpp>
6#include <cstddef>
7#include <cstdint>
8// #include <iostream>
9#include <string>
10
12{
13 uint64_t run_id;
14 uint32_t n_rank;
15 uint32_t current_rank;
17 bool verbose;
18 // Compiler typically adds 3 bytes padding
19
20 template <class Archive, typename T = void>
21 std::enable_if_t<AutoGenerated::FlagCompileTime::use_cereal_serde, T>
22 serialize(Archive& ar)
23 {
25 }
26
27 static std::string get_version();
28};
29
30inline std::ostream&
31operator<<(std::ostream& stream, const ExecInfo& obj)
32{
33 stream << obj.run_id << "\t" << obj.n_rank << "\t" << obj.thread_per_process
34 << "\t";
35 return stream;
36}
37
38#endif //__EXEC_INFO_HPP__
Definition execinfo.hpp:12
uint32_t current_rank
Definition execinfo.hpp:15
uint32_t n_rank
Definition execinfo.hpp:14
bool verbose
Definition execinfo.hpp:17
uint64_t run_id
Definition execinfo.hpp:13
std::enable_if_t< AutoGenerated::FlagCompileTime::use_cereal_serde, T > serialize(Archive &ar)
Definition execinfo.hpp:22
static std::string get_version()
Definition common.cpp:6
uint32_t thread_per_process
Definition execinfo.hpp:16