|
A Discrete-Event Network Simulator
|
API
|
Go to the documentation of this file.
28 #ifndef NS3_GRANTED_TIME_WINDOW_MPI_INTERFACE_H
29 #define NS3_GRANTED_TIME_WINDOW_MPI_INTERFACE_H
34 #include "ns3/nstime.h"
35 #include "ns3/buffer.h"
107 virtual void Enable (
int* pargc,
char*** pargv);
108 virtual void Enable (MPI_Comm communicator);
static void TestSendComplete()
Check for completed sends.
a unique identifier for an interface.
MPI_Request * GetRequest()
void SetBuffer(uint8_t *buffer)
Every class exported by the ns3 library is enclosed in the ns3 namespace.
virtual void Enable(int *pargc, char ***pargv)
Setup the parallel communication interface.
static bool g_freeCommunicator
Did ns-3 create the communicator? Have to free it.
virtual void Destroy()
Deletes storage used by the parallel environment.
Distributed simulator implementation using lookahead.
virtual bool IsEnabled()
Returns enabled state of parallel environment.
Tracks non-blocking sends.
static uint32_t g_sid
System ID (rank) for this task.
const uint32_t MAX_MPI_MSG_SIZE
maximum MPI message size for easy buffer creation
static void ReceiveMessages()
Check for received messages complete.
Interface between ns-3 and MPI.
static bool g_enabled
Has this interface been enabled.
MPI_Request m_request
The MPI request handle.
static uint32_t GetRxCount()
static MPI_Comm g_communicator
MPI communicator being used for ns-3 tasks.
static uint32_t g_rxCount
Total packets received.
static char ** g_pRxBuffers
Data buffers for non-blocking reads.
A base class which provides memory management and object aggregation.
virtual void Disable()
Clean up the ns-3 parallel communications interface.
static bool g_mpiInitCalled
Has MPI Init been called by this interface.
Simulation virtual time values and global simulation resolution.
uint8_t * m_buffer
The buffer.
static uint32_t g_txCount
Total packets sent.
static MPI_Request * g_requests
Pending non-blocking receives.
virtual uint32_t GetSystemId()
Get the id number of this rank.
virtual MPI_Comm GetCommunicator()
Return the communicator used to run ns-3.
static std::list< SentBuffer > g_pendingTx
List of pending non-blocking sends.
virtual void SendPacket(Ptr< Packet > p, const Time &rxTime, uint32_t node, uint32_t dev)
Send a packet to a remote node.
Pure virtual base class for the interface between ns-3 and the parallel communication layer being use...
virtual uint32_t GetSize()
Get the number of ranks used by ns-3.
static uint32_t GetTxCount()
static TypeId GetTypeId(void)
Register this type.
static uint32_t g_size
Size of the MPI COM_WORLD group.
Declaration of class ns3::ParallelCommunicationInterface.