Thrill
0.1
|
Initializes communication channels, manages communication channels and handles errors.
This class is responsible for initializing the three net::Groups for the major network components, SystemControl, FlowControl and DataManagement,
Definition at line 53 of file manager.hpp.
#include <manager.hpp>
Public Member Functions | |
Manager (const Manager &)=delete | |
non-copyable: delete copy-constructor More... | |
Manager (std::array< GroupPtr, kGroupCount > &&groups, common::JsonLogger &logger) noexcept | |
Construct Manager from already initialized net::Groups. More... | |
Manager (std::vector< GroupPtr > &&groups, common::JsonLogger &logger) noexcept | |
Construct Manager from already initialized net::Groups. More... | |
void | Close () |
Group & | GetDataGroup () |
Returns the net::Group for the data manager. More... | |
Group & | GetFlowGroup () |
Returns the net::Group for the flow control channel. More... | |
size_t | my_host_rank () const |
size_t | num_hosts () const |
Manager & | operator= (const Manager &)=delete |
non-copyable: delete assignment operator More... | |
net::Traffic | Traffic () const |
calculate overall traffic for final stats More... | |
Methods for ProfileTask | |
void | RunTask (const std::chrono::steady_clock::time_point &tp) final |
method called by ProfileThread. More... | |
Public Member Functions inherited from ProfileTask | |
virtual | ~ProfileTask () |
virtual destructor More... | |
Static Public Attributes | |
static constexpr size_t | kGroupCount = 2 |
The count of net::Groups to initialize. More... | |
Private Attributes | |
std::array< GroupPtr, kGroupCount > | groups_ |
The Groups initialized and managed by this Manager. More... | |
common::JsonLogger & | logger_ |
JsonLogger for statistics output. More... | |
std::chrono::steady_clock::time_point | tp_last_ |
last time statistics where outputted More... | |
Static Private Attributes | |
static constexpr bool | debug = false |
|
noexcept |
|
noexcept |
void Close | ( | ) |
Definition at line 61 of file group.cpp.
References Manager::groups_, and Manager::kGroupCount.
|
inline |
Returns the net::Group for the data manager.
Definition at line 90 of file manager.hpp.
References Traffic::Traffic().
|
inline |
Returns the net::Group for the flow control channel.
Definition at line 85 of file manager.hpp.
|
inline |
Definition at line 63 of file manager.hpp.
|
inline |
Definition at line 67 of file manager.hpp.
|
finalvirtual |
method called by ProfileThread.
Implements ProfileTask.
Definition at line 84 of file group.cpp.
References Group::connection(), Manager::groups_, Manager::kGroupCount, JsonLogger::line(), Manager::logger_, Group::my_host_rank(), Group::num_hosts(), Connection::prev_rx_bytes_, Connection::prev_tx_bytes_, Connection::rx_active_, Connection::rx_bytes_, JsonLine::sub(), Manager::tp_last_, Connection::tx_active_, and Connection::tx_bytes_.
net::Traffic Traffic | ( | ) | const |
calculate overall traffic for final stats
Definition at line 67 of file group.cpp.
References Group::connection(), Manager::groups_, Manager::kGroupCount, Group::my_host_rank(), Group::num_hosts(), Connection::rx_bytes_, and Connection::tx_bytes_.
Referenced by CountTrianglesGenerated(), JoinTPCH4(), Context::Launch(), main(), Percentiles(), RunHashWordCount(), RunJoinPageRankEdgePerLine(), RunKMeansFile(), RunKMeansGenerated(), RunPageRankJoinGenerated(), and RunWordCount().
|
staticprivate |
Definition at line 55 of file manager.hpp.
|
private |
The Groups initialized and managed by this Manager.
Definition at line 108 of file manager.hpp.
Referenced by Manager::Close(), Manager::RunTask(), and Manager::Traffic().
|
static |
The count of net::Groups to initialize.
Definition at line 61 of file manager.hpp.
Referenced by Manager::Close(), thrill::api::ConstructLoopbackHostContexts(), thrill::api::RunBackendLoopback(), thrill::api::RunLocalSameThread(), Manager::RunTask(), and Manager::Traffic().
|
private |
JsonLogger for statistics output.
Definition at line 111 of file manager.hpp.
Referenced by Manager::RunTask().
|
private |
last time statistics where outputted
Definition at line 114 of file manager.hpp.
Referenced by Manager::RunTask().