3.1-rc3 (revision d9ca08bb)
Typedefs | Functions
OTF2_EvtWriter.h File Reference

This lowest user-visible layer provides write routines to write event data of a single location. More...

#include <stdint.h>
#include "otf2_compiler.h"
#include <otf2/OTF2_ErrorCodes.h>
#include <otf2/OTF2_Events.h>
#include <otf2/OTF2_AttributeList.h>

Go to the source code of this file.

Typedefs

typedef struct OTF2_EvtWriter_struct OTF2_EvtWriter
 Keeps all necessary information about the event writer. See OTF2_EvtWriter_struct for detailed information.
 

Functions

OTF2_ErrorCode OTF2_EvtWriter_GetLocationID (const OTF2_EvtWriter *writer, OTF2_LocationRef *locationID)
 Function to get the location ID of a writer object. More...
 
OTF2_ErrorCode OTF2_EvtWriter_SetUserData (OTF2_EvtWriter *writer, void *userData)
 Function to set user defined data to a writer object. More...
 
OTF2_ErrorCode OTF2_EvtWriter_GetUserData (const OTF2_EvtWriter *writer, void **userData)
 Function to get the location of a writer object. More...
 
OTF2_ErrorCode OTF2_EvtWriter_SetLocationID (OTF2_EvtWriter *writer, OTF2_LocationRef location)
 The location ID is not always known on measurement start, and only needed on the first buffer flush to generate the file name. This function enables setting of the location ID after generating the buffer object. More...
 
OTF2_ErrorCode OTF2_EvtWriter_GetNumberOfEvents (OTF2_EvtWriter *writer, uint64_t *numberOfEvents)
 Get the number of events. More...
 
OTF2_ErrorCode OTF2_EvtWriter_BufferFlush (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_TimeStamp stopTime)
 Records a BufferFlush event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MeasurementOnOff (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_MeasurementMode measurementMode)
 Records a MeasurementOnOff event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_Enter (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RegionRef region)
 Records a Enter event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_Leave (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RegionRef region)
 Records a Leave event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiSend (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint32_t receiver, OTF2_CommRef communicator, uint32_t msgTag, uint64_t msgLength)
 Records a MpiSend event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiIsend (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint32_t receiver, OTF2_CommRef communicator, uint32_t msgTag, uint64_t msgLength, uint64_t requestID)
 Records a MpiIsend event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiIsendComplete (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint64_t requestID)
 Records a MpiIsendComplete event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiIrecvRequest (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint64_t requestID)
 Records a MpiIrecvRequest event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiRecv (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint32_t sender, OTF2_CommRef communicator, uint32_t msgTag, uint64_t msgLength)
 Records a MpiRecv event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiIrecv (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint32_t sender, OTF2_CommRef communicator, uint32_t msgTag, uint64_t msgLength, uint64_t requestID)
 Records a MpiIrecv event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiRequestTest (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint64_t requestID)
 Records a MpiRequestTest event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiRequestCancelled (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint64_t requestID)
 Records a MpiRequestCancelled event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiCollectiveBegin (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time)
 Records a MpiCollectiveBegin event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_MpiCollectiveEnd (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CollectiveOp collectiveOp, OTF2_CommRef communicator, uint32_t root, uint64_t sizeSent, uint64_t sizeReceived)
 Records a MpiCollectiveEnd event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_OmpFork (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint32_t numberOfRequestedThreads)
 Records a OmpFork event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_OmpJoin (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time)
 Records a OmpJoin event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_OmpAcquireLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint32_t lockID, uint32_t acquisitionOrder)
 Records a OmpAcquireLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_OmpReleaseLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint32_t lockID, uint32_t acquisitionOrder)
 Records a OmpReleaseLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_OmpTaskCreate (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint64_t taskID)
 Records a OmpTaskCreate event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_OmpTaskSwitch (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint64_t taskID)
 Records a OmpTaskSwitch event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_OmpTaskComplete (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint64_t taskID)
 Records a OmpTaskComplete event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_Metric (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_MetricRef metric, uint8_t numberOfMetrics, const OTF2_Type *typeIDs, const OTF2_MetricValue *metricValues)
 Records a Metric event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ParameterString (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_ParameterRef parameter, OTF2_StringRef string)
 Records a ParameterString event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ParameterInt (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_ParameterRef parameter, int64_t value)
 Records a ParameterInt event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ParameterUnsignedInt (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_ParameterRef parameter, uint64_t value)
 Records a ParameterUnsignedInt event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaWinCreate (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win)
 Records a RmaWinCreate event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaWinDestroy (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win)
 Records a RmaWinDestroy event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaCollectiveBegin (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time)
 Records a RmaCollectiveBegin event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaCollectiveEnd (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CollectiveOp collectiveOp, OTF2_RmaSyncLevel syncLevel, OTF2_RmaWinRef win, uint32_t root, uint64_t bytesSent, uint64_t bytesReceived)
 Records a RmaCollectiveEnd event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaGroupSync (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaSyncLevel syncLevel, OTF2_RmaWinRef win, OTF2_GroupRef group)
 Records a RmaGroupSync event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaRequestLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint32_t remote, uint64_t lockId, OTF2_LockType lockType)
 Records a RmaRequestLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaAcquireLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint32_t remote, uint64_t lockId, OTF2_LockType lockType)
 Records a RmaAcquireLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaTryLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint32_t remote, uint64_t lockId, OTF2_LockType lockType)
 Records a RmaTryLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaReleaseLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint32_t remote, uint64_t lockId)
 Records a RmaReleaseLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaSync (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint32_t remote, OTF2_RmaSyncType syncType)
 Records a RmaSync event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaWaitChange (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win)
 Records a RmaWaitChange event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaPut (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint32_t remote, uint64_t bytes, uint64_t matchingId)
 Records a RmaPut event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaGet (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint32_t remote, uint64_t bytes, uint64_t matchingId)
 Records a RmaGet event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaAtomic (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint32_t remote, OTF2_RmaAtomicType type, uint64_t bytesSent, uint64_t bytesReceived, uint64_t matchingId)
 Records a RmaAtomic event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaOpCompleteBlocking (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint64_t matchingId)
 Records a RmaOpCompleteBlocking event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaOpCompleteNonBlocking (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint64_t matchingId)
 Records a RmaOpCompleteNonBlocking event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaOpTest (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint64_t matchingId)
 Records a RmaOpTest event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_RmaOpCompleteRemote (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_RmaWinRef win, uint64_t matchingId)
 Records a RmaOpCompleteRemote event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadFork (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_Paradigm model, uint32_t numberOfRequestedThreads)
 Records a ThreadFork event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadJoin (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_Paradigm model)
 Records a ThreadJoin event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadTeamBegin (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadTeam)
 Records a ThreadTeamBegin event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadTeamEnd (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadTeam)
 Records a ThreadTeamEnd event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadAcquireLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_Paradigm model, uint32_t lockID, uint32_t acquisitionOrder)
 Records a ThreadAcquireLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadReleaseLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_Paradigm model, uint32_t lockID, uint32_t acquisitionOrder)
 Records a ThreadReleaseLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadTaskCreate (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadTeam, uint32_t creatingThread, uint32_t generationNumber)
 Records a ThreadTaskCreate event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadTaskSwitch (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadTeam, uint32_t creatingThread, uint32_t generationNumber)
 Records a ThreadTaskSwitch event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadTaskComplete (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadTeam, uint32_t creatingThread, uint32_t generationNumber)
 Records a ThreadTaskComplete event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadCreate (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadContingent, uint64_t sequenceCount)
 Records a ThreadCreate event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadBegin (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadContingent, uint64_t sequenceCount)
 Records a ThreadBegin event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadWait (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadContingent, uint64_t sequenceCount)
 Records a ThreadWait event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ThreadEnd (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef threadContingent, uint64_t sequenceCount)
 Records a ThreadEnd event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_CallingContextEnter (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CallingContextRef callingContext, uint32_t unwindDistance)
 Records a CallingContextEnter event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_CallingContextLeave (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CallingContextRef callingContext)
 Records a CallingContextLeave event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_CallingContextSample (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CallingContextRef callingContext, uint32_t unwindDistance, OTF2_InterruptGeneratorRef interruptGenerator)
 Records a CallingContextSample event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoCreateHandle (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, OTF2_IoAccessMode mode, OTF2_IoCreationFlag creationFlags, OTF2_IoStatusFlag statusFlags)
 Records a IoCreateHandle event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoDestroyHandle (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle)
 Records a IoDestroyHandle event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoDuplicateHandle (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef oldHandle, OTF2_IoHandleRef newHandle, OTF2_IoStatusFlag statusFlags)
 Records a IoDuplicateHandle event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoSeek (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, int64_t offsetRequest, OTF2_IoSeekOption whence, uint64_t offsetResult)
 Records a IoSeek event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoChangeStatusFlags (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, OTF2_IoStatusFlag statusFlags)
 Records a IoChangeStatusFlags event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoDeleteFile (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoParadigmRef ioParadigm, OTF2_IoFileRef file)
 Records a IoDeleteFile event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoOperationBegin (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, OTF2_IoOperationMode mode, OTF2_IoOperationFlag operationFlags, uint64_t bytesRequest, uint64_t matchingId)
 Records a IoOperationBegin event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoOperationTest (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, uint64_t matchingId)
 Records a IoOperationTest event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoOperationIssued (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, uint64_t matchingId)
 Records a IoOperationIssued event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoOperationComplete (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, uint64_t bytesResult, uint64_t matchingId)
 Records a IoOperationComplete event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoOperationCancelled (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, uint64_t matchingId)
 Records a IoOperationCancelled event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoAcquireLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, OTF2_LockType lockType)
 Records a IoAcquireLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoReleaseLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, OTF2_LockType lockType)
 Records a IoReleaseLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_IoTryLock (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_IoHandleRef handle, OTF2_LockType lockType)
 Records a IoTryLock event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ProgramBegin (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_StringRef programName, uint32_t numberOfArguments, const OTF2_StringRef *programArguments)
 Records a ProgramBegin event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ProgramEnd (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, int64_t exitStatus)
 Records a ProgramEnd event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_NonBlockingCollectiveRequest (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, uint64_t requestID)
 Records a NonBlockingCollectiveRequest event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_NonBlockingCollectiveComplete (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CollectiveOp collectiveOp, OTF2_CommRef communicator, uint32_t root, uint64_t sizeSent, uint64_t sizeReceived, uint64_t requestID)
 Records a NonBlockingCollectiveComplete event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_CommCreate (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef communicator)
 Records a CommCreate event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_CommDestroy (OTF2_EvtWriter *writer, OTF2_AttributeList *attributeList, OTF2_TimeStamp time, OTF2_CommRef communicator)
 Records a CommDestroy event. More...
 
OTF2_ErrorCode OTF2_EvtWriter_StoreRewindPoint (OTF2_EvtWriter *writer, uint32_t rewindId)
 Please give me a documentation. More...
 
OTF2_ErrorCode OTF2_EvtWriter_Rewind (OTF2_EvtWriter *writer, uint32_t rewindId)
 Please give me a documentation. More...
 
OTF2_ErrorCode OTF2_EvtWriter_ClearRewindPoint (OTF2_EvtWriter *writer, uint32_t rewindId)
 Please give me a documentation. More...
 

Detailed Description

This lowest user-visible layer provides write routines to write event data of a single location.

Source template
templates/OTF2_EvtWriter.tmpl.h

Function Documentation

OTF2_ErrorCode OTF2_EvtWriter_GetLocationID ( const OTF2_EvtWriter writer,
OTF2_LocationRef locationID 
)

Function to get the location ID of a writer object.

Parameters
writerWriter object which has to be deleted
locationIDPointer to a variable where the ID is returned in
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_SetUserData ( OTF2_EvtWriter writer,
void *  userData 
)

Function to set user defined data to a writer object.

Parameters
writerWriter object.
userDataUser provided data. Can be queried with OTF2_EvtWriter_GetUserData.
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_GetUserData ( const OTF2_EvtWriter writer,
void **  userData 
)

Function to get the location of a writer object.

Parameters
writerWriter object.
[out]userDataPointer to a variable where the pointer to the location is returned in.
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_SetLocationID ( OTF2_EvtWriter writer,
OTF2_LocationRef  location 
)

The location ID is not always known on measurement start, and only needed on the first buffer flush to generate the file name. This function enables setting of the location ID after generating the buffer object.

Parameters
writerWriter object.
locationLocation ID.
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_GetNumberOfEvents ( OTF2_EvtWriter writer,
uint64_t *  numberOfEvents 
)

Get the number of events.

Get the number of events written with this event writer. You should call this function right before closing the event writer to get the correct number of stored event records.

Parameters
writerWriter object.
[out]numberOfEventsReturn pointer to the number of events.
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_BufferFlush ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_TimeStamp  stopTime 
)

Records a BufferFlush event.

This event signals that the internal buffer was flushed at the given time.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
stopTimeThe time the buffer flush finished.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_MeasurementOnOff ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_MeasurementMode  measurementMode 
)

Records a MeasurementOnOff event.

This event signals where the measurement system turned measurement on or off.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
measurementModeIs the measurement turned on (OTF2_MEASUREMENT_ON) or off (OTF2_MEASUREMENT_OFF)?
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_Enter ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RegionRef  region 
)

Records a Enter event.

An Enter record indicates that the program enters a code region.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
regionNeeds to be defined in a definition record References a Region definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_REGION is available.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c, otf2_openmp_writer_example.c, otf2_pthread_writer_example.c, and otf2_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_Leave ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RegionRef  region 
)

Records a Leave event.

A Leave record indicates that the program leaves a code region.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
regionNeeds to be defined in a definition record References a Region definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_REGION is available.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c, otf2_openmp_writer_example.c, otf2_pthread_writer_example.c, and otf2_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_MpiSend ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint32_t  receiver,
OTF2_CommRef  communicator,
uint32_t  msgTag,
uint64_t  msgLength 
)

Records a MpiSend event.

An MpiSend record indicates that an MPI send operation was initiated (MPI_SEND). It keeps the necessary information for this event: receiver of the message, communicator, and the message tag. You can optionally add further information like the message length (size of the send buffer).

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
receiverMPI rank of receiver in communicator.
communicatorCommunicator ID. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
msgTagMessage tag
msgLengthMessage length
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_MpiIsend ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint32_t  receiver,
OTF2_CommRef  communicator,
uint32_t  msgTag,
uint64_t  msgLength,
uint64_t  requestID 
)

Records a MpiIsend event.

An MpiIsend record indicates that a non-blocking MPI send operation was initiated (MPI_ISEND). It keeps the necessary information for this event: receiver of the message, communicator, and the message tag. You can optionally add further information like the message length (size of the send buffer).

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
receiverMPI rank of receiver in communicator.
communicatorCommunicator ID. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
msgTagMessage tag
msgLengthMessage length
requestIDID of the related request
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_MpiIsendComplete ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint64_t  requestID 
)

Records a MpiIsendComplete event.

An MpiIsendComplete record indicates the completion of a non- blocking MPI send operation. In the case where the send request is released before it is completed by MPI, this record will only indicate the release, as it becomes impossible to track the completion of the send operation afterwards. This case may be identified by the surrounding events.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
requestIDID of the related request
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_MpiIrecvRequest ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint64_t  requestID 
)

Records a MpiIrecvRequest event.

An MpiIrecvRequest record indicates that a non-blocking MPI receive operation was initiated (MPI_IRECV).

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
requestIDID of the requested receive
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_MpiRecv ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint32_t  sender,
OTF2_CommRef  communicator,
uint32_t  msgTag,
uint64_t  msgLength 
)

Records a MpiRecv event.

An MpiRecv record indicates that an MPI message was received (MPI_RECV). It keeps the necessary information for this event: sender of the message, communicator, and the message tag. You can optionally add further information like the message length (size of the receive buffer).

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
senderMPI rank of sender in communicator.
communicatorCommunicator ID. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
msgTagMessage tag
msgLengthMessage length
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_MpiIrecv ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint32_t  sender,
OTF2_CommRef  communicator,
uint32_t  msgTag,
uint64_t  msgLength,
uint64_t  requestID 
)

Records a MpiIrecv event.

An MpiIrecv record indicates the completion of a non-blocking MPI receive operation completed (MPI_IRECV). It keeps the necessary information for this event: sender of the message, communicator, and the message tag. You can optionally add further information like the message length (size of the receive buffer).

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
senderMPI rank of sender in communicator.
communicatorCommunicator ID. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
msgTagMessage tag
msgLengthMessage length
requestIDID of the related request
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_MpiRequestTest ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint64_t  requestID 
)

Records a MpiRequestTest event.

This events appears if the program tests if a request has already completed but the test failed.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
requestIDID of the related request
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_MpiRequestCancelled ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint64_t  requestID 
)

Records a MpiRequestCancelled event.

This events appears if the program canceled a request.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
requestIDID of the related request
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_MpiCollectiveBegin ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time 
)

Records a MpiCollectiveBegin event.

An MpiCollectiveBegin record marks the begin of an MPI collective operation (MPI_GATHER, MPI_SCATTER etc.).

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_MpiCollectiveEnd ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CollectiveOp  collectiveOp,
OTF2_CommRef  communicator,
uint32_t  root,
uint64_t  sizeSent,
uint64_t  sizeReceived 
)

Records a MpiCollectiveEnd event.

An MpiCollectiveEnd record marks the end of an MPI collective operation (MPI_GATHER, MPI_SCATTER etc.). It keeps the necessary information for this event: type of collective operation, communicator, the root of this collective operation. You can optionally add further information like sent and received bytes.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
collectiveOpDetermines which collective operation it is.
communicatorCommunicator References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
rootRank of root in communicator or any predefined constant of OTF2_CollectiveRoot.
sizeSentSize of the sent message.
sizeReceivedSize of the received message.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_OmpFork ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint32_t  numberOfRequestedThreads 
)

Records a OmpFork event.

An OmpFork record marks that an OpenMP Thread forks a thread team.

This event record is superseded by the ThreadFork event record and should not be used when the ThreadFork event record is in use.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
numberOfRequestedThreadsRequested size of the team.
Since
Version 1.0
Deprecated:
In version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_OmpJoin ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time 
)

Records a OmpJoin event.

An OmpJoin record marks that a team of threads is joint and only the master thread continues execution.

This event record is superseded by the ThreadJoin event record and should not be used when the ThreadJoin event record is in use.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
Since
Version 1.0
Deprecated:
In version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_OmpAcquireLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint32_t  lockID,
uint32_t  acquisitionOrder 
)

Records a OmpAcquireLock event.

An OmpAcquireLock record marks that a thread acquires an OpenMP lock.

This event record is superseded by the ThreadAcquireLock event record and should not be used when the ThreadAcquireLock event record is in use.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
lockIDID of the lock.
acquisitionOrderA monotonically increasing number to determine the order of lock acquisitions (with unsynchronized clocks this is otherwise not possible). Corresponding acquire-release events have same number.
Since
Version 1.0
Deprecated:
In version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_OmpReleaseLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint32_t  lockID,
uint32_t  acquisitionOrder 
)

Records a OmpReleaseLock event.

An OmpReleaseLock record marks that a thread releases an OpenMP lock.

This event record is superseded by the ThreadReleaseLock event record and should not be used when the ThreadReleaseLock event record is in use.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
lockIDID of the lock.
acquisitionOrderA monotonically increasing number to determine the order of lock acquisitions (with unsynchronized clocks this is otherwise not possible). Corresponding acquire-release events have same number.
Since
Version 1.0
Deprecated:
In version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_OmpTaskCreate ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint64_t  taskID 
)

Records a OmpTaskCreate event.

An OmpTaskCreate record marks that an OpenMP Task was/will be created in the current region.

This event record is superseded by the ThreadTaskCreate event record and should not be used when the ThreadTaskCreate event record is in use.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
taskIDIdentifier of the newly created task instance.
Since
Version 1.0
Deprecated:
In version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_OmpTaskSwitch ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint64_t  taskID 
)

Records a OmpTaskSwitch event.

An OmpTaskSwitch record indicates that the execution of the current task will be suspended and another task starts/restarts its execution. Please note that this may change the current call stack of the executing location.

This event record is superseded by the ThreadTaskSwitch event record and should not be used when the ThreadTaskSwitch event record is in use.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
taskIDIdentifier of the now active task instance.
Since
Version 1.0
Deprecated:
In version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_OmpTaskComplete ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint64_t  taskID 
)

Records a OmpTaskComplete event.

An OmpTaskComplete record indicates that the execution of an OpenMP task has finished.

This event record is superseded by the ThreadTaskComplete event record and should not be used when the ThreadTaskComplete event record is in use.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
taskIDIdentifier of the completed task instance.
Since
Version 1.0
Deprecated:
In version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_Metric ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_MetricRef  metric,
uint8_t  numberOfMetrics,
const OTF2_Type typeIDs,
const OTF2_MetricValue metricValues 
)

Records a Metric event.

A Metric event is always stored at the location that recorded the metric. The event can reference a MetricClass or MetricInstance. Therefore, metric classes and instances share same ID space. Synchronous metrics are always located right immediately the corresponding Enter and Leave event.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
metricCould be a metric class or a metric instance. References a MetricClass, or a MetricInstance definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_METRIC is available.
numberOfMetricsNumber of metrics with in the set.
typeIDsList of metric types. These types must match that of the corresponding MetricMember definitions.
metricValuesList of metric values.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ParameterString ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_ParameterRef  parameter,
OTF2_StringRef  string 
)

Records a ParameterString event.

A ParameterString record marks that in the current region, the specified string parameter has the specified value.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
parameterParameter ID. References a Parameter definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_PARAMETER is available.
stringValue: Handle of a string definition References a String definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_STRING is available.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ParameterInt ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_ParameterRef  parameter,
int64_t  value 
)

Records a ParameterInt event.

A ParameterInt record marks that in the current region, the specified integer parameter has the specified value.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
parameterParameter ID. References a Parameter definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_PARAMETER is available.
valueValue of the recorded parameter.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ParameterUnsignedInt ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_ParameterRef  parameter,
uint64_t  value 
)

Records a ParameterUnsignedInt event.

A ParameterUnsignedInt record marks that in the current region, the specified unsigned integer parameter has the specified value.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
parameterParameter ID. References a Parameter definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_PARAMETER is available.
valueValue of the recorded parameter.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaWinCreate ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win 
)

Records a RmaWinCreate event.

An RmaWinCreate record denotes the creation of an RMA window. Only valid if the RmaWin definition was flagged with OTF2_RMA_WIN_FLAG_CREATE_DESTROY_EVENTS. This event can be enclosed by an RmaCollectiveBegin and RmaCollectiveEnd event pair either with OTF2_COLLECTIVE_OP_CREATE_HANDLE or OTF2_COLLECTIVE_OP_CREATE_HANDLE_AND_ALLOCATE as the operation type.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window created. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaWinDestroy ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win 
)

Records a RmaWinDestroy event.

An RmaWinDestroy record denotes the destruction of an RMA window. Only valid if the RmaWin definition was flagged with OTF2_RMA_WIN_FLAG_CREATE_DESTROY_EVENTS. This event can be enclosed by an RmaCollectiveBegin and RmaCollectiveEnd event pair either with OTF2_COLLECTIVE_OP_DESTROY_HANDLE or OTF2_COLLECTIVE_OP_DESTROY_HANDLE_AND_DEALLOCATE as the operation type. In this case the RMA window is only marked for destruction, which will happen with the RmaCollectiveEnd event.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window destructed. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaCollectiveBegin ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time 
)

Records a RmaCollectiveBegin event.

An RmaCollectiveBegin record denotes the beginning of a collective RMA operation.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaCollectiveEnd ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CollectiveOp  collectiveOp,
OTF2_RmaSyncLevel  syncLevel,
OTF2_RmaWinRef  win,
uint32_t  root,
uint64_t  bytesSent,
uint64_t  bytesReceived 
)

Records a RmaCollectiveEnd event.

An RmaCollectiveEnd record denotes the end of a collective RMA operation.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
collectiveOpDetermines which collective operation it is.
syncLevelSynchronization level of this collective operation.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
rootRoot process for this operation or any predefined constant of OTF2_CollectiveRoot.
bytesSentBytes sent in operation.
bytesReceivedBytes receives in operation.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaGroupSync ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaSyncLevel  syncLevel,
OTF2_RmaWinRef  win,
OTF2_GroupRef  group 
)

Records a RmaGroupSync event.

An RmaGroupSync record denotes the synchronization with a subgroup of processes on an RMA window.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
syncLevelSynchronization level of this collective operation.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
groupGroup of remote processes involved in synchronization. References a Group definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_GROUP is available.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaRequestLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint32_t  remote,
uint64_t  lockId,
OTF2_LockType  lockType 
)

Records a RmaRequestLock event.

An RmaRequestLock record denotes the time a lock was requested and with it the earliest time it could have been granted. It is used to mark (possibly) non-blocking lock request, as defined by the MPI standard.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
remoteRank of the locked remote process or OTF2_UNDEFINED_UINT32 if all processes of the specified window are locked.
lockIdID of the lock acquired, if multiple locks are defined on a window.
lockTypeType of lock acquired.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaAcquireLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint32_t  remote,
uint64_t  lockId,
OTF2_LockType  lockType 
)

Records a RmaAcquireLock event.

An RmaAcquireLock record denotes the time a lock was acquired by the process.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
remoteRank of the locked remote process or OTF2_UNDEFINED_UINT32 if all processes of the specified window are locked.
lockIdID of the lock acquired, if multiple locks are defined on a window.
lockTypeType of lock acquired.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaTryLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint32_t  remote,
uint64_t  lockId,
OTF2_LockType  lockType 
)

Records a RmaTryLock event.

An RmaTryLock record denotes the time of an unsuccessful attempt to acquire the lock.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
remoteRank of the locked remote process or OTF2_UNDEFINED_UINT32 if all processes of the specified window are locked.
lockIdID of the lock acquired, if multiple locks are defined on a window.
lockTypeType of lock acquired.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaReleaseLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint32_t  remote,
uint64_t  lockId 
)

Records a RmaReleaseLock event.

An RmaReleaseLock record denotes the time the lock was released.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
remoteRank of the locked remote process or OTF2_UNDEFINED_UINT32 if all processes of the specified window are locked.
lockIdID of the lock released, if multiple locks are defined on a window.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaSync ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint32_t  remote,
OTF2_RmaSyncType  syncType 
)

Records a RmaSync event.

An RmaSync record denotes the direct synchronization with a possibly remote process.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
remoteRank of the locked remote process.
syncTypeType of synchronization.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaWaitChange ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win 
)

Records a RmaWaitChange event.

An RmaWaitChange record denotes the change of a window that was waited for.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaPut ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint32_t  remote,
uint64_t  bytes,
uint64_t  matchingId 
)

Records a RmaPut event.

An RmaPut record denotes the time a put operation was issued.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
remoteRank of the target process.
bytesBytes sent to target.
matchingIdID used for matching the corresponding completion record.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaGet ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint32_t  remote,
uint64_t  bytes,
uint64_t  matchingId 
)

Records a RmaGet event.

An RmaGet record denotes the time a get operation was issued.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
remoteRank of the target process.
bytesBytes received from target.
matchingIdID used for matching the corresponding completion record.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaAtomic ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint32_t  remote,
OTF2_RmaAtomicType  type,
uint64_t  bytesSent,
uint64_t  bytesReceived,
uint64_t  matchingId 
)

Records a RmaAtomic event.

An RmaAtomic record denotes the time an atomic RMA operation was issued.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
remoteRank of the target process.
typeType of atomic operation.
bytesSentBytes sent to target.
bytesReceivedBytes received from target.
matchingIdID used for matching the corresponding completion record.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaOpCompleteBlocking ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint64_t  matchingId 
)

Records a RmaOpCompleteBlocking event.

An RmaOpCompleteBlocking record denotes the local completion of a blocking RMA operation.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
matchingIdID used for matching the corresponding RMA operation record.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaOpCompleteNonBlocking ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint64_t  matchingId 
)

Records a RmaOpCompleteNonBlocking event.

An RmaOpCompleteNonBlocking record denotes the local completion of a non-blocking RMA operation.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
matchingIdID used for matching the corresponding RMA operation record.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaOpTest ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint64_t  matchingId 
)

Records a RmaOpTest event.

An RmaOpTest record denotes that a non-blocking RMA operation has been tested for completion unsuccessfully.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
matchingIdID used for matching the corresponding RMA operation record.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_RmaOpCompleteRemote ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_RmaWinRef  win,
uint64_t  matchingId 
)

Records a RmaOpCompleteRemote event.

An RmaOpCompleteRemote record denotes the remote completion of an RMA operation.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
winID of the window used for this operation. References a RmaWin definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_RMA_WIN is available.
matchingIdID used for matching the corresponding RMA operation record.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadFork ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_Paradigm  model,
uint32_t  numberOfRequestedThreads 
)

Records a ThreadFork event.

A ThreadFork record marks that a thread forks a thread team.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
modelThe threading paradigm this event took place.
numberOfRequestedThreadsRequested size of the team.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadJoin ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_Paradigm  model 
)

Records a ThreadJoin event.

A ThreadJoin record marks that a team of threads is joint and only the master thread continues execution.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
modelThe threading paradigm this event took place.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadTeamBegin ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadTeam 
)

Records a ThreadTeamBegin event.

The current location enters the specified thread team.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadTeamThread team References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadTeamEnd ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadTeam 
)

Records a ThreadTeamEnd event.

The current location leaves the specified thread team.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadTeamThread team References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadAcquireLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_Paradigm  model,
uint32_t  lockID,
uint32_t  acquisitionOrder 
)

Records a ThreadAcquireLock event.

A ThreadAcquireLock record marks that a thread acquires a lock.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
modelThe threading paradigm this event took place.
lockIDID of the lock.
acquisitionOrderA monotonically increasing number to determine the order of lock acquisitions (with unsynchronized clocks this is otherwise not possible). Corresponding acquire-release events have same number.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadReleaseLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_Paradigm  model,
uint32_t  lockID,
uint32_t  acquisitionOrder 
)

Records a ThreadReleaseLock event.

A ThreadReleaseLock record marks that a thread releases a lock.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
modelThe threading paradigm this event took place.
lockIDID of the lock.
acquisitionOrderA monotonically increasing number to determine the order of lock acquisitions (with unsynchronized clocks this is otherwise not possible). Corresponding acquire-release events have same number.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadTaskCreate ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadTeam,
uint32_t  creatingThread,
uint32_t  generationNumber 
)

Records a ThreadTaskCreate event.

A ThreadTaskCreate record marks that a task in was/will be created and will be processed by the specified thread team.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadTeamThread team References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
creatingThreadCreating thread of this task.
generationNumberThread-private generation number of task's creating thread.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadTaskSwitch ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadTeam,
uint32_t  creatingThread,
uint32_t  generationNumber 
)

Records a ThreadTaskSwitch event.

A ThreadTaskSwitch record indicates that the execution of the current task will be suspended and another task starts/restarts its execution. Please note that this may change the current call stack of the executing location.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadTeamThread team References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
creatingThreadCreating thread of this task.
generationNumberThread-private generation number of task's creating thread.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadTaskComplete ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadTeam,
uint32_t  creatingThread,
uint32_t  generationNumber 
)

Records a ThreadTaskComplete event.

A ThreadTaskComplete record indicates that the execution of an OpenMP task has finished.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadTeamThread team References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
creatingThreadCreating thread of this task.
generationNumberThread-private generation number of task's creating thread.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadCreate ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadContingent,
uint64_t  sequenceCount 
)

Records a ThreadCreate event.

The location created successfully a new thread.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadContingentThe thread contingent. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
sequenceCountA threadContingent unique number. The corresponding ThreadBegin event does have the same number.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadBegin ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadContingent,
uint64_t  sequenceCount 
)

Records a ThreadBegin event.

Marks the begin of a thread created by another thread.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadContingentThe thread contingent. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
sequenceCountA threadContingent unique number. The corresponding ThreadCreate event does have the same number.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadWait ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadContingent,
uint64_t  sequenceCount 
)

Records a ThreadWait event.

The location waits for the completion of another thread.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadContingentThe thread contingent. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
sequenceCountA threadContingent unique number. The corresponding ThreadEnd event does have the same number.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ThreadEnd ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  threadContingent,
uint64_t  sequenceCount 
)

Records a ThreadEnd event.

Marks the end of a thread.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
threadContingentThe thread contingent. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
sequenceCountA threadContingent unique number. The corresponding ThreadWait event does have the same number. OTF2_UNDEFINED_UINT64 in case no corresponding ThreadWait event exists.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_CallingContextEnter ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CallingContextRef  callingContext,
uint32_t  unwindDistance 
)

Records a CallingContextEnter event.

The thread entered an instrumented region, represented by the referenced CallingContext. In contrast to the Enter event, it gives the full calling context through the CallingContext tree.

Events based on the CallingContext definition are mutually exclusive with the Enter/Leave events in a trace.

If no callback for this event is set but a callback for Enter events is defined, the reader will automatically generate an Enter callback call for the Region referenced by the CallingContext attribute of this event. Note that this emulation does not re-create the full calling context! It only re-creates the event order for instrumented regions.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
callingContextThe entered region as referenced by the CallingContext definition. References a CallingContext definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_CALLING_CONTEXT is available.
unwindDistanceThe unwindDistance for this callingContext. See the description in CallingContext.
Since
Version 2.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_CallingContextLeave ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CallingContextRef  callingContext 
)

Records a CallingContextLeave event.

The thread left an instrumented region, represented by the referenced CallingContext. In contrast to the Leave event, it gives the full calling context through the CallingContext tree.

The unwind distance for this CallingContext is defined to be 1. Because it must be assumed that the instrumented region made progress since the previous CallingContext event.

Events based on the CallingContext definition are mutually exclusive with the Enter/Leave events in a trace.

The parent of the CallingContext must be used as the previous calling context for the next event.

If no callback for this event is set but a callback for Leave events is defined, the reader will automatically generate an Leave callback call for the Region referenced by the CallingContext attribute of this event. Note that this emulation does not re-create the full calling context! It only re-creates the event order for instrumented regions.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
callingContextThe left region as referenced by the CallingContext definition. References a CallingContext definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_CALLING_CONTEXT is available.
Since
Version 2.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_CallingContextSample ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CallingContextRef  callingContext,
uint32_t  unwindDistance,
OTF2_InterruptGeneratorRef  interruptGenerator 
)

Records a CallingContextSample event.

The thread was interrupted to take a sample of its current state (region and source code location).

Events based on the CallingContext definition are mutually exclusive with the Enter/Leave events in a trace.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
callingContextDescribes the calling context of the thread when it was interrupted. References a CallingContext definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_CALLING_CONTEXT is available.
unwindDistanceThe unwindDistance for this callingContext. See the description in CallingContext.
interruptGeneratorReferences a InterruptGenerator definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_INTERRUPT_GENERATOR is available.
Since
Version 1.5
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoCreateHandle ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
OTF2_IoAccessMode  mode,
OTF2_IoCreationFlag  creationFlags,
OTF2_IoStatusFlag  statusFlags 
)

Records a IoCreateHandle event.

An IoCreateHandle record marks the creation of a new active I/O handle that can be used by subsequent I/O operation events.

An IoHandle is active between a pair of consecutive IoCreateHandle and IoDestroyHandle events. All Locations of a LocationGroup have access to an active IoHandle.

If the Comm attribute of the IoHandle handle is not OTF2_UNDEFINED_COMM, this is a collective operation over Comm.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleA previously inactive I/O handle which will be activated by this record. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
modeDetermines which I/O operations can be applied to this I/O handle (e.g., read-only, write-only, read- write).
creationFlagsRequested I/O handle creation flags (e.g., create, exclusive, etc.).
statusFlagsI/O handle status flags which will be associated with the handle attribute (e.g., append, create, close-on-exec, async, etc).
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoDestroyHandle ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle 
)

Records a IoDestroyHandle event.

An IoDestroyHandle record marks the end of an active I/O handle's lifetime.

An IoHandle is active between a pair of consecutive IoCreateHandle and IoDestroyHandle events. All Locations of a LocationGroup have access to an active IoHandle.

If the Comm attribute of the IoHandle handle is not OTF2_UNDEFINED_COMM, this is a collective operation over Comm.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle which will be inactivated by this records. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoDuplicateHandle ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  oldHandle,
OTF2_IoHandleRef  newHandle,
OTF2_IoStatusFlag  statusFlags 
)

Records a IoDuplicateHandle event.

An IoDuplicateHandle record marks the duplication of an already existing active I/O handle.

The new I/O handle newHandle is active after this event.

Both IoHandles must reference the same Comm definition or be OTF2_UNDEFINED_COMM. If the Comm attribute of the IoHandle handles is not OTF2_UNDEFINED_COMM, this is a collective operation over Comm.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
oldHandleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
newHandleA previously inactive I/O handle which will be activated by this record. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
statusFlagsThe status flag for the new I/O handle newHandle. No status flags will be inherited from the I/O handle oldHandle.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoSeek ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
int64_t  offsetRequest,
OTF2_IoSeekOption  whence,
uint64_t  offsetResult 
)

Records a IoSeek event.

An IoSeek record marks a change of the position, e.g., within a file.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
offsetRequestRequested offset.
whencePosition inside the file from where offsetRequest should be applied (e.g., absolute from the start or end, relative to the current position).
offsetResultResulting offset, e.g., within the file relative to the beginning of the file.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoChangeStatusFlags ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
OTF2_IoStatusFlag  statusFlags 
)

Records a IoChangeStatusFlags event.

An IoChangeStatusFlags record marks a change to the status flags associated with an active I/O handle.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
statusFlagsSet flags (e.g., close-on-exec, append, etc.).
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoDeleteFile ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoParadigmRef  ioParadigm,
OTF2_IoFileRef  file 
)

Records a IoDeleteFile event.

An IoDeleteFile record marks the deletion of an I/O file.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
ioParadigmThe I/O paradigm which induced the deletion. References a IoParadigm definition.
fileFile identifier. References a IoRegularFile, or a IoDirectory definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_FILE is available.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoOperationBegin ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
OTF2_IoOperationMode  mode,
OTF2_IoOperationFlag  operationFlags,
uint64_t  bytesRequest,
uint64_t  matchingId 
)

Records a IoOperationBegin event.

An IoOperationBegin record marks the begin of a file operation (read, write, etc.).

See Event order for I/O operation records for the possible event orders.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
modeMode of an I/O handle operation (e.g., read or write).
operationFlagsSpecial semantic of this operation.
bytesRequestRequested bytes to write/read.
matchingIdIdentifier used to correlate associated event records of an I/O operation. This identifier is unique for the referenced IoHandle.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoOperationTest ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
uint64_t  matchingId 
)

Records a IoOperationTest event.

An IoOperationTest record marks an unsuccessful test whether an I/O operation has already finished.

See Event order for I/O operation records for the possible event orders.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
matchingIdIdentifier used to correlate associated event records of an I/O operation. This identifier is unique for the referenced IoHandle.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoOperationIssued ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
uint64_t  matchingId 
)

Records a IoOperationIssued event.

An IoOperationIssued record marks the successful initiation of a non-blocking operation (read, write, etc.) on an active I/O handle.

See Event order for I/O operation records for the possible event orders.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
matchingIdIdentifier used to correlate associated event records of an I/O operation. This identifier is unique for the referenced IoHandle.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoOperationComplete ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
uint64_t  bytesResult,
uint64_t  matchingId 
)

Records a IoOperationComplete event.

An IoOperationComplete record marks the end of a file operation (read, write, etc.) on an active I/O handle.

See Event order for I/O operation records for the possible event orders.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
bytesResultNumber of actual transferred bytes.
matchingIdIdentifier used to correlate associated event records of an I/O operation. This identifier is unique for the referenced IoHandle.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoOperationCancelled ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
uint64_t  matchingId 
)

Records a IoOperationCancelled event.

An IoOperationCancelled record marks the successful cancellation of a non-blocking operation (read, write, etc.) on an active I/O handle.

See Event order for I/O operation records for the possible event orders.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
matchingIdIdentifier used to correlate associated event records of an I/O operation. This identifier is unique for the referenced IoHandle.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoAcquireLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
OTF2_LockType  lockType 
)

Records a IoAcquireLock event.

An IoAcquireLock record marks the acquisition of an I/O lock.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
lockTypeType of the lock.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoReleaseLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
OTF2_LockType  lockType 
)

Records a IoReleaseLock event.

An IoReleaseLock record marks the release of an I/O lock.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
lockTypeType of the lock.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_IoTryLock ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_IoHandleRef  handle,
OTF2_LockType  lockType 
)

Records a IoTryLock event.

An IoTryLock record marks when an I/O lock was requested but not granted.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
handleAn active I/O handle. References a IoHandle definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_IO_HANDLE is available.
lockTypeType of the lock.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ProgramBegin ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_StringRef  programName,
uint32_t  numberOfArguments,
const OTF2_StringRef programArguments 
)

Records a ProgramBegin event.

The ProgramBegin record marks the begin of the program.

This event is restricted to happen at most once on any Location in a LocationGroup that is of type OTF2_LOCATION_GROUP_TYPE_PROCESS.

If there is a ProgramBegin record, a corresponding ProgramEnd record on any Location in the same LocationGroup is mandatory and vice versa.

None of the timestamps recorded within the same LocationGroup must be smaller than ProgramBegin's timestamp.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
programNameThe name of the program. References a String definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_STRING is available.
numberOfArgumentsNumber of additional arguments to the program.
programArgumentsList of additional arguments to the program.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ProgramEnd ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
int64_t  exitStatus 
)

Records a ProgramEnd event.

The ProgramEnd record marks the end of the program.

This event is restricted to happen at most once on any Location in a LocationGroup that is of type OTF2_LOCATION_GROUP_TYPE_PROCESS.

If there is a ProgramEnd record, a corresponding ProgramBegin record on any Location in the same LocationGroup is mandatory, and vice versa.

None of the timestamps recorded within the same LocationGroup must be larger than ProgramEnd's timestamp.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
exitStatusThe exit status of the program. Note, that on some systems only the least significant 8 bits may be visible to other processes. Use OTF2_UNDEFINED_INT64, if the exit status was not available.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_NonBlockingCollectiveRequest ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
uint64_t  requestID 
)

Records a NonBlockingCollectiveRequest event.

A NonBlockingCollectiveRequest record indicates that a non-blocking collective operation was initiated.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
requestIDID of the requested operation.
Since
Version 3.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_NonBlockingCollectiveComplete ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CollectiveOp  collectiveOp,
OTF2_CommRef  communicator,
uint32_t  root,
uint64_t  sizeSent,
uint64_t  sizeReceived,
uint64_t  requestID 
)

Records a NonBlockingCollectiveComplete event.

A NonBlockingCollectiveComplete record indicates that a non- blocking collective operation completed.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
collectiveOpDetermines which collective operation it is.
communicatorCommunicator ID. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
rootRank of root in communicator or any predefined constant of OTF2_CollectiveRoot.
sizeSentSize of the sent data.
sizeReceivedSize of the received data.
requestIDID of the requested operation.
Since
Version 3.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_CommCreate ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  communicator 
)

Records a CommCreate event.

A CommCreate record denotes the creation of a communicator. Only valid if the Comm definition was flagged with OTF2_COMM_FLAG_CREATE_DESTROY_EVENTS. This event must be enclosed by an MpiCollectiveBegin and MpiCollectiveEnd or NonBlockingCollectiveRequest and NonBlockingCollectiveComplete event pair with OTF2_COLLECTIVE_OP_CREATE_HANDLE as the operation type.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
communicatorCommunicator ID. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
Since
Version 3.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_CommDestroy ( OTF2_EvtWriter writer,
OTF2_AttributeList attributeList,
OTF2_TimeStamp  time,
OTF2_CommRef  communicator 
)

Records a CommDestroy event.

A CommDestroy record marks the communicator for destruction at the end of the enclosing MpiCollectiveBegin and MpiCollectiveEnd event pair. Only valid if the Comm definition was flagged with OTF2_COMM_FLAG_CREATE_DESTROY_EVENTS. This event must be enclosed by an MpiCollectiveBegin and MpiCollectiveEnd event pair with OTF2_COLLECTIVE_OP_DESTROY_HANDLE as the operation type.

Parameters
writerWriter object.
attributeListGeneric attributes for the event.
timeThe time for this event.
communicatorCommunicator ID. References a Comm, or a InterComm definition and will be mapped to the global definition if a mapping table of type OTF2_MAPPING_COMM is available.
Since
Version 3.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c.
OTF2_ErrorCode OTF2_EvtWriter_StoreRewindPoint ( OTF2_EvtWriter writer,
uint32_t  rewindId 
)

Please give me a documentation.

Parameters
writerWriter object.
rewindIdGeneric attributes for the event.
Since
Version 1.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_Rewind ( OTF2_EvtWriter writer,
uint32_t  rewindId 
)

Please give me a documentation.

Parameters
writerWriter object.
rewindIdGeneric attributes for the event.
Since
Version 1.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_EvtWriter_ClearRewindPoint ( OTF2_EvtWriter writer,
uint32_t  rewindId 
)

Please give me a documentation.

Parameters
writerWriter object.
rewindIdGeneric attributes for the event.
Since
Version 1.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.