Skip to content
Snippets Groups Projects
Commit 573c0456 authored by Sebastian Eibl's avatar Sebastian Eibl
Browse files

add statistics about communication partners

parent f901b60d
Branches
Tags
No related merge requests found
......@@ -56,6 +56,7 @@ void BufferSystem::iterator::operator++()
} else
{
bufferSystem_.bytesReceived_ += currentRecvBuffer_->size() * sizeof(RecvBuffer::ElementType);
bufferSystem_.numberOfReceives_ += 1;
}
}
......@@ -307,7 +308,8 @@ void BufferSystem::sendAll()
{
if ( iter->second.buffer.size() > 0 )
{
bytesSent_ += iter->second.buffer.size() * sizeof(SendBuffer::ElementType);
bytesSent_ += iter->second.buffer.size() * sizeof(SendBuffer::ElementType);
numberOfSends_ += 1;
currentComm_->send( iter->first, iter->second.buffer );
}
......@@ -338,7 +340,8 @@ void BufferSystem::send( MPIRank rank )
if ( iter->second.buffer.size() > 0 )
{
bytesSent_ += iter->second.buffer.size() * sizeof(SendBuffer::ElementType);
bytesSent_ += iter->second.buffer.size() * sizeof(SendBuffer::ElementType);
numberOfSends_ += 1;
currentComm_->send( rank, iter->second.buffer );
}
......@@ -372,8 +375,11 @@ void BufferSystem::startCommunication()
currentComm_->scheduleReceives( recvInfos_ );
communicationRunning_ = true;
bytesSent_ = 0;
bytesReceived_ = 0;
bytesSent_ = 0;
bytesReceived_ = 0;
numberOfSends_ = 0;
numberOfReceives_ = 0;
}
......
......@@ -193,9 +193,16 @@ public:
//@}
//*******************************************************************************************************************
///Bytes sent during the current or last communication
int64_t getBytesSent() const { return bytesSent_; }
///Bytes received during the current or last communication
int64_t getBytesReceived() const { return bytesReceived_; }
///Communication partners during current or last send operation
int64_t getNumberOfSends() const { return numberOfSends_; }
///Communication partners during current or last receive operation
int64_t getNumberOfReceives() const { return numberOfReceives_; }
//* Rank Ranges *************************************************************************************************
/*! \name Rank Ranges */
......@@ -244,8 +251,11 @@ protected:
//each concurrently running communication uses different tags
static std::set<int> activeTags_;
int64_t bytesSent_ = 0; ///< number of bytes sent during last communication
int64_t bytesReceived_ = 0; ///< number of bytes received during last communication
int64_t bytesSent_ = 0; ///< number of bytes sent during last communication
int64_t bytesReceived_ = 0; ///< number of bytes received during last communication
int64_t numberOfSends_ = 0; ///< number of communication partners during last send
int64_t numberOfReceives_ = 0; ///< number of communication partners during last receive
};
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment