explicit TIData(std::string name, double amount) : name_(name), amount_(amount){};
// Pt2PtTI: send, isend, sssend, issend, recv, irecv
explicit TIData(std::string name, int endpoint, int size, std::string datatype)
: name_(name), endpoint(endpoint), send_size(size), send_type(datatype){};
explicit TIData(std::string name, double amount) : name_(name), amount_(amount){};
// Pt2PtTI: send, isend, sssend, issend, recv, irecv
explicit TIData(std::string name, int endpoint, int size, std::string datatype)
: name_(name), endpoint(endpoint), send_size(size), send_type(datatype){};