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

This layer always writes globally defined OTF2 definition records and is used to write either the global definitions in addition to local definitions or write all definitions as globally valid in combination with OTF2_GlobalEventWriter. Global definitions are stored in one global definition file, which makes it nearly impossible to write them in a distributed manner. It is therefore only allowed to get such a writer from an OTF2_Archive which is the primary archive in the collective context. More...

#include <stdint.h>
#include "otf2_compiler.h"
#include <otf2/OTF2_ErrorCodes.h>
#include <otf2/OTF2_GeneralDefinitions.h>
#include <otf2/OTF2_AttributeValue.h>
#include <otf2/OTF2_Definitions.h>

Go to the source code of this file.

Typedefs

typedef struct OTF2_GlobalDefWriter_struct OTF2_GlobalDefWriter
 Typedef of the struct which keeps all necessary information of a global definition writer. Can be used to reference these structs from external.
 

Functions

OTF2_ErrorCode OTF2_GlobalDefWriter_GetNumberOfDefinitions (OTF2_GlobalDefWriter *writerHandle, uint64_t *numberOfDefinitions)
 Returns the current number of written definitions of a global definition writer. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_GetNumberOfLocations (OTF2_GlobalDefWriter *writerHandle, uint64_t *numberOfLocations)
 Returns the current number of written location definitions of a global definition writer. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteClockProperties (OTF2_GlobalDefWriter *writerHandle, uint64_t timerResolution, uint64_t globalOffset, uint64_t traceLength, uint64_t realtimeTimestamp)
 Writes a ClockProperties definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteParadigm (OTF2_GlobalDefWriter *writerHandle, OTF2_Paradigm paradigm, OTF2_StringRef name, OTF2_ParadigmClass paradigmClass)
 Writes a Paradigm definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteParadigmProperty (OTF2_GlobalDefWriter *writerHandle, OTF2_Paradigm paradigm, OTF2_ParadigmProperty property, OTF2_Type type, OTF2_AttributeValue value)
 Writes a ParadigmProperty definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoParadigm (OTF2_GlobalDefWriter *writerHandle, OTF2_IoParadigmRef self, OTF2_StringRef identification, OTF2_StringRef name, OTF2_IoParadigmClass ioParadigmClass, OTF2_IoParadigmFlag ioParadigmFlags, uint8_t numberOfProperties, const OTF2_IoParadigmProperty *properties, const OTF2_Type *types, const OTF2_AttributeValue *values)
 Writes a IoParadigm definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteString (OTF2_GlobalDefWriter *writerHandle, OTF2_StringRef self, const char *string)
 Writes a String definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteAttribute (OTF2_GlobalDefWriter *writerHandle, OTF2_AttributeRef self, OTF2_StringRef name, OTF2_StringRef description, OTF2_Type type)
 Writes a Attribute definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteSystemTreeNode (OTF2_GlobalDefWriter *writerHandle, OTF2_SystemTreeNodeRef self, OTF2_StringRef name, OTF2_StringRef className, OTF2_SystemTreeNodeRef parent)
 Writes a SystemTreeNode definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteLocationGroup (OTF2_GlobalDefWriter *writerHandle, OTF2_LocationGroupRef self, OTF2_StringRef name, OTF2_LocationGroupType locationGroupType, OTF2_SystemTreeNodeRef systemTreeParent, OTF2_LocationGroupRef creatingLocationGroup)
 Writes a LocationGroup definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteLocation (OTF2_GlobalDefWriter *writerHandle, OTF2_LocationRef self, OTF2_StringRef name, OTF2_LocationType locationType, uint64_t numberOfEvents, OTF2_LocationGroupRef locationGroup)
 Writes a Location definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteRegion (OTF2_GlobalDefWriter *writerHandle, OTF2_RegionRef self, OTF2_StringRef name, OTF2_StringRef canonicalName, OTF2_StringRef description, OTF2_RegionRole regionRole, OTF2_Paradigm paradigm, OTF2_RegionFlag regionFlags, OTF2_StringRef sourceFile, uint32_t beginLineNumber, uint32_t endLineNumber)
 Writes a Region definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallsite (OTF2_GlobalDefWriter *writerHandle, OTF2_CallsiteRef self, OTF2_StringRef sourceFile, uint32_t lineNumber, OTF2_RegionRef enteredRegion, OTF2_RegionRef leftRegion)
 Writes a Callsite definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallpath (OTF2_GlobalDefWriter *writerHandle, OTF2_CallpathRef self, OTF2_CallpathRef parent, OTF2_RegionRef region)
 Writes a Callpath definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteGroup (OTF2_GlobalDefWriter *writerHandle, OTF2_GroupRef self, OTF2_StringRef name, OTF2_GroupType groupType, OTF2_Paradigm paradigm, OTF2_GroupFlag groupFlags, uint32_t numberOfMembers, const uint64_t *members)
 Writes a Group definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteMetricMember (OTF2_GlobalDefWriter *writerHandle, OTF2_MetricMemberRef self, OTF2_StringRef name, OTF2_StringRef description, OTF2_MetricType metricType, OTF2_MetricMode metricMode, OTF2_Type valueType, OTF2_Base base, int64_t exponent, OTF2_StringRef unit)
 Writes a MetricMember definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteMetricClass (OTF2_GlobalDefWriter *writerHandle, OTF2_MetricRef self, uint8_t numberOfMetrics, const OTF2_MetricMemberRef *metricMembers, OTF2_MetricOccurrence metricOccurrence, OTF2_RecorderKind recorderKind)
 Writes a MetricClass definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteMetricInstance (OTF2_GlobalDefWriter *writerHandle, OTF2_MetricRef self, OTF2_MetricRef metricClass, OTF2_LocationRef recorder, OTF2_MetricScope metricScope, uint64_t scope)
 Writes a MetricInstance definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteComm (OTF2_GlobalDefWriter *writerHandle, OTF2_CommRef self, OTF2_StringRef name, OTF2_GroupRef group, OTF2_CommRef parent, OTF2_CommFlag flags)
 Writes a Comm definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteParameter (OTF2_GlobalDefWriter *writerHandle, OTF2_ParameterRef self, OTF2_StringRef name, OTF2_ParameterType parameterType)
 Writes a Parameter definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteRmaWin (OTF2_GlobalDefWriter *writerHandle, OTF2_RmaWinRef self, OTF2_StringRef name, OTF2_CommRef comm, OTF2_RmaWinFlag flags)
 Writes a RmaWin definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteMetricClassRecorder (OTF2_GlobalDefWriter *writerHandle, OTF2_MetricRef metric, OTF2_LocationRef recorder)
 Writes a MetricClassRecorder definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteSystemTreeNodeProperty (OTF2_GlobalDefWriter *writerHandle, OTF2_SystemTreeNodeRef systemTreeNode, OTF2_StringRef name, OTF2_Type type, OTF2_AttributeValue value)
 Writes a SystemTreeNodeProperty definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteSystemTreeNodeDomain (OTF2_GlobalDefWriter *writerHandle, OTF2_SystemTreeNodeRef systemTreeNode, OTF2_SystemTreeDomain systemTreeDomain)
 Writes a SystemTreeNodeDomain definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteLocationGroupProperty (OTF2_GlobalDefWriter *writerHandle, OTF2_LocationGroupRef locationGroup, OTF2_StringRef name, OTF2_Type type, OTF2_AttributeValue value)
 Writes a LocationGroupProperty definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteLocationProperty (OTF2_GlobalDefWriter *writerHandle, OTF2_LocationRef location, OTF2_StringRef name, OTF2_Type type, OTF2_AttributeValue value)
 Writes a LocationProperty definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCartDimension (OTF2_GlobalDefWriter *writerHandle, OTF2_CartDimensionRef self, OTF2_StringRef name, uint32_t size, OTF2_CartPeriodicity cartPeriodicity)
 Writes a CartDimension definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCartTopology (OTF2_GlobalDefWriter *writerHandle, OTF2_CartTopologyRef self, OTF2_StringRef name, OTF2_CommRef communicator, uint8_t numberOfDimensions, const OTF2_CartDimensionRef *cartDimensions)
 Writes a CartTopology definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCartCoordinate (OTF2_GlobalDefWriter *writerHandle, OTF2_CartTopologyRef cartTopology, uint32_t rank, uint8_t numberOfDimensions, const uint32_t *coordinates)
 Writes a CartCoordinate definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteSourceCodeLocation (OTF2_GlobalDefWriter *writerHandle, OTF2_SourceCodeLocationRef self, OTF2_StringRef file, uint32_t lineNumber)
 Writes a SourceCodeLocation definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallingContext (OTF2_GlobalDefWriter *writerHandle, OTF2_CallingContextRef self, OTF2_RegionRef region, OTF2_SourceCodeLocationRef sourceCodeLocation, OTF2_CallingContextRef parent)
 Writes a CallingContext definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallingContextProperty (OTF2_GlobalDefWriter *writerHandle, OTF2_CallingContextRef callingContext, OTF2_StringRef name, OTF2_Type type, OTF2_AttributeValue value)
 Writes a CallingContextProperty definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteInterruptGenerator (OTF2_GlobalDefWriter *writerHandle, OTF2_InterruptGeneratorRef self, OTF2_StringRef name, OTF2_InterruptGeneratorMode interruptGeneratorMode, OTF2_Base base, int64_t exponent, uint64_t period)
 Writes a InterruptGenerator definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoFileProperty (OTF2_GlobalDefWriter *writerHandle, OTF2_IoFileRef ioFile, OTF2_StringRef name, OTF2_Type type, OTF2_AttributeValue value)
 Writes a IoFileProperty definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoRegularFile (OTF2_GlobalDefWriter *writerHandle, OTF2_IoFileRef self, OTF2_StringRef name, OTF2_SystemTreeNodeRef scope)
 Writes a IoRegularFile definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoDirectory (OTF2_GlobalDefWriter *writerHandle, OTF2_IoFileRef self, OTF2_StringRef name, OTF2_SystemTreeNodeRef scope)
 Writes a IoDirectory definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoHandle (OTF2_GlobalDefWriter *writerHandle, OTF2_IoHandleRef self, OTF2_StringRef name, OTF2_IoFileRef file, OTF2_IoParadigmRef ioParadigm, OTF2_IoHandleFlag ioHandleFlags, OTF2_CommRef comm, OTF2_IoHandleRef parent)
 Writes a IoHandle definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoPreCreatedHandleState (OTF2_GlobalDefWriter *writerHandle, OTF2_IoHandleRef ioHandle, OTF2_IoAccessMode mode, OTF2_IoStatusFlag statusFlags)
 Writes a IoPreCreatedHandleState definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallpathParameter (OTF2_GlobalDefWriter *writerHandle, OTF2_CallpathRef callpath, OTF2_ParameterRef parameter, OTF2_Type type, OTF2_AttributeValue value)
 Writes a CallpathParameter definition record into the GlobalDefWriter. More...
 
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteInterComm (OTF2_GlobalDefWriter *writerHandle, OTF2_CommRef self, OTF2_StringRef name, OTF2_GroupRef groupA, OTF2_GroupRef groupB, OTF2_CommRef commonCommunicator, OTF2_CommFlag flags)
 Writes a InterComm definition record into the GlobalDefWriter. More...
 

Detailed Description

This layer always writes globally defined OTF2 definition records and is used to write either the global definitions in addition to local definitions or write all definitions as globally valid in combination with OTF2_GlobalEventWriter. Global definitions are stored in one global definition file, which makes it nearly impossible to write them in a distributed manner. It is therefore only allowed to get such a writer from an OTF2_Archive which is the primary archive in the collective context.

Source template
templates/OTF2_GlobalDefWriter.tmpl.h

Function Documentation

OTF2_ErrorCode OTF2_GlobalDefWriter_GetNumberOfDefinitions ( OTF2_GlobalDefWriter writerHandle,
uint64_t *  numberOfDefinitions 
)

Returns the current number of written definitions of a global definition writer.

Parameters
writerHandleHandle to the global definition writer.
[out]numberOfDefinitionsStorage for the number of definitions.
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_GetNumberOfLocations ( OTF2_GlobalDefWriter writerHandle,
uint64_t *  numberOfLocations 
)

Returns the current number of written location definitions of a global definition writer.

Parameters
writerHandleHandle to the global definition writer.
[out]numberOfLocationsStorage for the number of locations.
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteClockProperties ( OTF2_GlobalDefWriter writerHandle,
uint64_t  timerResolution,
uint64_t  globalOffset,
uint64_t  traceLength,
uint64_t  realtimeTimestamp 
)

Writes a ClockProperties definition record into the GlobalDefWriter.

Defines the timer resolution and time range of this trace. There will be no event with a timestamp less than globalOffset, and no event with timestamp greater than (globalOffset + traceLength).

Parameters
writerHandleThe writer handle.
timerResolutionTicks per seconds.
globalOffsetA timestamp smaller than all event timestamps.
traceLengthA timespan which includes the timespan between the smallest and greatest timestamp of all event timestamps.
realtimeTimestampA realtime timestamp of the globalOffset timestamp in nanoseconds since 1970-01-01T00:00 UTC. Use OTF2_UNDEFINED_TIMESTAMP if no such timestamp exists. Since version 3.0.
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_GlobalDefWriter_WriteParadigm ( OTF2_GlobalDefWriter writerHandle,
OTF2_Paradigm  paradigm,
OTF2_StringRef  name,
OTF2_ParadigmClass  paradigmClass 
)

Writes a Paradigm definition record into the GlobalDefWriter.

Attests that the following parallel paradigm was available at the time when the trace was recorded, and vice versa. Note that this does not attest that the paradigm was used. For convenience, this also includes a proper name for the paradigm and a classification. This definition is only allowed to appear at most once in the definitions per Paradigm.

Parameters
writerHandleThe writer handle.
paradigmThe paradigm to attest.
nameThe name of the paradigm. References a String definition.
paradigmClassThe class of this paradigm.
Since
Version 1.5
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteParadigmProperty ( OTF2_GlobalDefWriter writerHandle,
OTF2_Paradigm  paradigm,
OTF2_ParadigmProperty  property,
OTF2_Type  type,
OTF2_AttributeValue  value 
)

Writes a ParadigmProperty definition record into the GlobalDefWriter.

Extensible annotation for the Paradigm definition.

The tuple (paradigm, property) must be unique.

Parameters
writerHandleThe writer handle.
paradigmThe paradigm to annotate.
propertyThe property.
typeThe type of this property. Must match with the defined type of the property.
valueThe value of this property.
Since
Version 1.5
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoParadigm ( OTF2_GlobalDefWriter writerHandle,
OTF2_IoParadigmRef  self,
OTF2_StringRef  identification,
OTF2_StringRef  name,
OTF2_IoParadigmClass  ioParadigmClass,
OTF2_IoParadigmFlag  ioParadigmFlags,
uint8_t  numberOfProperties,
const OTF2_IoParadigmProperty properties,
const OTF2_Type types,
const OTF2_AttributeValue values 
)

Writes a IoParadigm definition record into the GlobalDefWriter.

Attests that the following I/O paradigm was available at the time when the trace was recorded, and vice versa. Note that this does not attest that the paradigm was used. For convenience, this also includes a proper name for the paradigm and a classification.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this IoParadigm definition.
identificationThe I/O paradigm identification. This should be used programmatically to identify a specific I/O paradigm. For a human-readable name use the name attribute. If this identification matches one of the known I/O paradigms listed in the OTF2 documentation Known OTF2 I/O paradigms, then the attributes of this definition must match those specified there. References a String definition.
nameThe name of the I/O paradigm. This should be presented to humans as the name of this I/O paradigm. References a String definition.
ioParadigmClassThe class of this I/O paradigm.
ioParadigmFlagsBoolean properties of this I/O paradigm.
numberOfPropertiesNumber of properties.
propertiesThe property.
typesThe type of this property. Must match with the defined type of the property.
valuesThe value of this property.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteString ( OTF2_GlobalDefWriter writerHandle,
OTF2_StringRef  self,
const char *  string 
)

Writes a String definition record into the GlobalDefWriter.

The string definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this String definition.
stringThe string, null terminated.
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_GlobalDefWriter_WriteAttribute ( OTF2_GlobalDefWriter writerHandle,
OTF2_AttributeRef  self,
OTF2_StringRef  name,
OTF2_StringRef  description,
OTF2_Type  type 
)

Writes a Attribute definition record into the GlobalDefWriter.

The attribute definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Attribute definition.
nameName of the attribute. References a String definition.
descriptionDescription of the attribute. References a String definition. Since version 1.4.
typeType of the attribute value.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteSystemTreeNode ( OTF2_GlobalDefWriter writerHandle,
OTF2_SystemTreeNodeRef  self,
OTF2_StringRef  name,
OTF2_StringRef  className,
OTF2_SystemTreeNodeRef  parent 
)

Writes a SystemTreeNode definition record into the GlobalDefWriter.

The system tree node definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this SystemTreeNode definition.
nameFree form instance name of this node. References a String definition.
classNameFree form class name of this node References a String definition.
parentParent ID of this node. May be OTF2_UNDEFINED_SYSTEM_TREE_NODE to indicate that there is no parent. References a SystemTreeNode definition.
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_GlobalDefWriter_WriteLocationGroup ( OTF2_GlobalDefWriter writerHandle,
OTF2_LocationGroupRef  self,
OTF2_StringRef  name,
OTF2_LocationGroupType  locationGroupType,
OTF2_SystemTreeNodeRef  systemTreeParent,
OTF2_LocationGroupRef  creatingLocationGroup 
)

Writes a LocationGroup definition record into the GlobalDefWriter.

The location group definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this LocationGroup definition.
nameName of the group. References a String definition.
locationGroupTypeType of this group.
systemTreeParentParent of this location group in the system tree. References a SystemTreeNode definition.
creatingLocationGroupThe creating location group of this group. For type OTF2_LOCATION_GROUP_TYPE_PROCESS this may be another group of type OTF2_LOCATION_GROUP_TYPE_PROCESS or OTF2_UNDEFINED_LOCATION_GROUP. For type OTF2_LOCATION_GROUP_TYPE_ACCELERATOR, this must be a group of type OTF2_LOCATION_GROUP_TYPE_PROCESS. References a LocationGroup definition. Since version 3.0.
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_GlobalDefWriter_WriteLocation ( OTF2_GlobalDefWriter writerHandle,
OTF2_LocationRef  self,
OTF2_StringRef  name,
OTF2_LocationType  locationType,
uint64_t  numberOfEvents,
OTF2_LocationGroupRef  locationGroup 
)

Writes a Location definition record into the GlobalDefWriter.

The location definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Location definition.
nameName of the location References a String definition.
locationTypeLocation type.
numberOfEventsNumber of events this location has recorded.
locationGroupLocation group which includes this location. References a LocationGroup definition.
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_GlobalDefWriter_WriteRegion ( OTF2_GlobalDefWriter writerHandle,
OTF2_RegionRef  self,
OTF2_StringRef  name,
OTF2_StringRef  canonicalName,
OTF2_StringRef  description,
OTF2_RegionRole  regionRole,
OTF2_Paradigm  paradigm,
OTF2_RegionFlag  regionFlags,
OTF2_StringRef  sourceFile,
uint32_t  beginLineNumber,
uint32_t  endLineNumber 
)

Writes a Region definition record into the GlobalDefWriter.

The region definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Region definition.
nameName of the region (demangled name if available). References a String definition.
canonicalNameAlternative name of the region (e.g. mangled name). References a String definition. Since version 1.1.
descriptionA more detailed description of this region. References a String definition.
regionRoleRegion role. Since version 1.1.
paradigmParadigm. Since version 1.1.
regionFlagsRegion flags. Since version 1.1.
sourceFileThe source file where this region was declared. References a String definition.
beginLineNumberStarting line number of this region in the source file.
endLineNumberEnding line number of this region in the source file.
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_GlobalDefWriter_WriteCallsite ( OTF2_GlobalDefWriter writerHandle,
OTF2_CallsiteRef  self,
OTF2_StringRef  sourceFile,
uint32_t  lineNumber,
OTF2_RegionRef  enteredRegion,
OTF2_RegionRef  leftRegion 
)

Writes a Callsite definition record into the GlobalDefWriter.

The callsite definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Callsite definition.
sourceFileThe source file where this call was made. References a String definition.
lineNumberLine number in the source file where this call was made.
enteredRegionThe region which was called. References a Region definition.
leftRegionThe region which made the call. References a Region definition.
Since
Version 1.0
Deprecated:
In version 2.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallpath ( OTF2_GlobalDefWriter writerHandle,
OTF2_CallpathRef  self,
OTF2_CallpathRef  parent,
OTF2_RegionRef  region 
)

Writes a Callpath definition record into the GlobalDefWriter.

The callpath definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Callpath definition.
parentThe parent of this callpath. References a Callpath definition.
regionThe region of this callpath. References a Region definition.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteGroup ( OTF2_GlobalDefWriter writerHandle,
OTF2_GroupRef  self,
OTF2_StringRef  name,
OTF2_GroupType  groupType,
OTF2_Paradigm  paradigm,
OTF2_GroupFlag  groupFlags,
uint32_t  numberOfMembers,
const uint64_t *  members 
)

Writes a Group definition record into the GlobalDefWriter.

The group definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Group definition.
nameName of this group References a String definition.
groupTypeThe type of this group. Since version 1.2.
paradigmThe paradigm of this communication group. Since version 1.2.
groupFlagsFlags for this group. Since version 1.2.
numberOfMembersThe number of members in this group.
membersThe identifiers of the group members.
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_GlobalDefWriter_WriteMetricMember ( OTF2_GlobalDefWriter writerHandle,
OTF2_MetricMemberRef  self,
OTF2_StringRef  name,
OTF2_StringRef  description,
OTF2_MetricType  metricType,
OTF2_MetricMode  metricMode,
OTF2_Type  valueType,
OTF2_Base  base,
int64_t  exponent,
OTF2_StringRef  unit 
)

Writes a MetricMember definition record into the GlobalDefWriter.

A metric is defined by a MetricMember definition. A metric member is always a member of a metric class. Therefore, a single metric is a special case of a metric class with only one member. It is not allowed to reference a metric member ID in a Metric event, but only metric class IDs.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this MetricMember definition.
nameName of the metric. References a String definition.
descriptionDescription of the metric. References a String definition.
metricTypeMetric type: PAPI, etc.
metricModeMetric mode: accumulative, fix, relative, etc.
valueTypeType of the value. Only OTF2_TYPE_INT64, OTF2_TYPE_UINT64, and OTF2_TYPE_DOUBLE are valid types. If this metric member is recorded in a Metric event, than this type and the type in the event must match.
baseThe recorded values should be handled in this given base, either binary or decimal. This information can be used if the value needs to be scaled.
exponentThe values inside the Metric events should be scaled by the factor base^exponent, to get the value in its base unit. For example, if the metric values come in as KiBi, than the base should be OTF2_BASE_BINARY and the exponent 10. Than the writer does not need to scale the values up to bytes, but can directly write the KiBi values into the Metric event. At reading time, the reader can apply the scaling factor to get the value in its base unit, ie. in bytes.
unitUnit of the metric. This needs to be the scale free base unit, ie. "bytes", "operations", or "seconds". In particular this unit should not have any scale prefix. References a String definition.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteMetricClass ( OTF2_GlobalDefWriter writerHandle,
OTF2_MetricRef  self,
uint8_t  numberOfMetrics,
const OTF2_MetricMemberRef metricMembers,
OTF2_MetricOccurrence  metricOccurrence,
OTF2_RecorderKind  recorderKind 
)

Writes a MetricClass definition record into the GlobalDefWriter.

For a metric class it is implicitly given that the event stream that records the metric is also the scope. A metric class can contain multiple different metrics.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this MetricClass definition.
numberOfMetricsNumber of metrics within the set.
metricMembersList of metric members. References a MetricMember definition.
metricOccurrenceDefines occurrence of a metric set.
recorderKindWhat kind of locations will record this metric class, or will this metric class only be recorded by metric instances. Since version 1.2.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteMetricInstance ( OTF2_GlobalDefWriter writerHandle,
OTF2_MetricRef  self,
OTF2_MetricRef  metricClass,
OTF2_LocationRef  recorder,
OTF2_MetricScope  metricScope,
uint64_t  scope 
)

Writes a MetricInstance definition record into the GlobalDefWriter.

A MetricInstance is used to define metrics that are recorded at one location for multiple locations or for another location. The occurrence of a metric instance is implicitly of type OTF2_METRIC_ASYNCHRONOUS.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this MetricClass definition.
metricClassThe instanced MetricClass. This metric class must be of kind OTF2_RECORDER_KIND_ABSTRACT. References a MetricClass, or a MetricInstance definition.
recorderRecorder of the metric: location ID. References a Location definition.
metricScopeDefines type of scope: location, location group, system tree node, or a generic group of locations.
scopeScope of metric: ID of a location, location group, system tree node, or a generic group of locations.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteComm ( OTF2_GlobalDefWriter writerHandle,
OTF2_CommRef  self,
OTF2_StringRef  name,
OTF2_GroupRef  group,
OTF2_CommRef  parent,
OTF2_CommFlag  flags 
)

Writes a Comm definition record into the GlobalDefWriter.

The communicator definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Comm definition.
nameThe name given by calling MPI_Comm_set_name on this communicator. Or the empty name to indicate that no name was given. References a String definition.
groupThe describing MPI group of this MPI communicator The group needs to be of type OTF2_GROUP_TYPE_COMM_GROUP or OTF2_GROUP_TYPE_COMM_SELF. References a Group definition.
parentThe parent MPI communicator from which this communicator was created, if any. Use OTF2_UNDEFINED_COMM to indicate no parent. References a Comm definition.
flagsSpecial characteristics of this communicator. Since version 3.0.
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_GlobalDefWriter_WriteParameter ( OTF2_GlobalDefWriter writerHandle,
OTF2_ParameterRef  self,
OTF2_StringRef  name,
OTF2_ParameterType  parameterType 
)

Writes a Parameter definition record into the GlobalDefWriter.

The parameter definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Parameter definition.
nameName of the parameter (variable name etc.) References a String definition.
parameterTypeType of the parameter, OTF2_ParameterType for possible types.
Since
Version 1.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteRmaWin ( OTF2_GlobalDefWriter writerHandle,
OTF2_RmaWinRef  self,
OTF2_StringRef  name,
OTF2_CommRef  comm,
OTF2_RmaWinFlag  flags 
)

Writes a RmaWin definition record into the GlobalDefWriter.

A window defines the communication context for any remote-memory access operation.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this RmaWin definition.
nameName, e.g. 'GASPI Queue 1', 'NVidia Card 2', etc.. References a String definition.
commCommunicator object used to create the window. References a Comm definition.
flagsSpecial characteristics of this RMA window. Since version 3.0.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteMetricClassRecorder ( OTF2_GlobalDefWriter writerHandle,
OTF2_MetricRef  metric,
OTF2_LocationRef  recorder 
)

Writes a MetricClassRecorder definition record into the GlobalDefWriter.

The metric class recorder definition.

Parameters
writerHandleThe writer handle.
metricParent MetricClass, or MetricInstance definition to which this one is a supplementary definition. References a MetricClass, or a MetricInstance definition.
recorderThe location which recorded the referenced metric class. References a Location definition.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteSystemTreeNodeProperty ( OTF2_GlobalDefWriter writerHandle,
OTF2_SystemTreeNodeRef  systemTreeNode,
OTF2_StringRef  name,
OTF2_Type  type,
OTF2_AttributeValue  value 
)

Writes a SystemTreeNodeProperty definition record into the GlobalDefWriter.

An arbitrary key/value property for a SystemTreeNode definition.

Parameters
writerHandleThe writer handle.
systemTreeNodeParent SystemTreeNode definition to which this one is a supplementary definition. References a SystemTreeNode definition.
nameName of the property. References a String definition.
typeThe type of this property. Since version 2.0.
valueThe value of this property. Since version 2.0.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteSystemTreeNodeDomain ( OTF2_GlobalDefWriter writerHandle,
OTF2_SystemTreeNodeRef  systemTreeNode,
OTF2_SystemTreeDomain  systemTreeDomain 
)

Writes a SystemTreeNodeDomain definition record into the GlobalDefWriter.

The system tree node domain definition.

Parameters
writerHandleThe writer handle.
systemTreeNodeParent SystemTreeNode definition to which this one is a supplementary definition. References a SystemTreeNode definition.
systemTreeDomainThe domain in which the referenced SystemTreeNode operates in.
Since
Version 1.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteLocationGroupProperty ( OTF2_GlobalDefWriter writerHandle,
OTF2_LocationGroupRef  locationGroup,
OTF2_StringRef  name,
OTF2_Type  type,
OTF2_AttributeValue  value 
)

Writes a LocationGroupProperty definition record into the GlobalDefWriter.

An arbitrary key/value property for a LocationGroup definition.

Parameters
writerHandleThe writer handle.
locationGroupParent LocationGroup definition to which this one is a supplementary definition. References a LocationGroup definition.
nameName of the property. References a String definition.
typeThe type of this property. Since version 2.0.
valueThe value of this property. Since version 2.0.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteLocationProperty ( OTF2_GlobalDefWriter writerHandle,
OTF2_LocationRef  location,
OTF2_StringRef  name,
OTF2_Type  type,
OTF2_AttributeValue  value 
)

Writes a LocationProperty definition record into the GlobalDefWriter.

An arbitrary key/value property for a Location definition.

Parameters
writerHandleThe writer handle.
locationParent Location definition to which this one is a supplementary definition. References a Location definition.
nameName of the property. References a String definition.
typeThe type of this property. Since version 2.0.
valueThe value of this property. Since version 2.0.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCartDimension ( OTF2_GlobalDefWriter writerHandle,
OTF2_CartDimensionRef  self,
OTF2_StringRef  name,
uint32_t  size,
OTF2_CartPeriodicity  cartPeriodicity 
)

Writes a CartDimension definition record into the GlobalDefWriter.

Each dimension in a Cartesian topology is composed of a global ID, a name, its size, and whether it is periodic or not.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this CartDimension definition.
nameThe name of the Cartesian topology dimension. References a String definition.
sizeThe size of the Cartesian topology dimension.
cartPeriodicityPeriodicity of the Cartesian topology dimension.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCartTopology ( OTF2_GlobalDefWriter writerHandle,
OTF2_CartTopologyRef  self,
OTF2_StringRef  name,
OTF2_CommRef  communicator,
uint8_t  numberOfDimensions,
const OTF2_CartDimensionRef cartDimensions 
)

Writes a CartTopology definition record into the GlobalDefWriter.

Each topology is described by a global ID, a reference to its name, a reference to a communicator, the number of dimensions, and references to those dimensions. The topology type is defined by the paradigm of the group referenced by the associated communicator.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this CartTopology definition.
nameThe name of the topology. References a String definition.
communicatorCommunicator object used to create the topology. References a Comm definition.
numberOfDimensionsNumber of dimensions.
cartDimensionsThe dimensions of this topology. References a CartDimension definition.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCartCoordinate ( OTF2_GlobalDefWriter writerHandle,
OTF2_CartTopologyRef  cartTopology,
uint32_t  rank,
uint8_t  numberOfDimensions,
const uint32_t *  coordinates 
)

Writes a CartCoordinate definition record into the GlobalDefWriter.

Defines the coordinate of the location referenced by the given rank (w.r.t. the communicator associated to the topology) in the referenced topology.

Parameters
writerHandleThe writer handle.
cartTopologyParent CartTopology definition to which this one is a supplementary definition. References a CartTopology definition.
rankThe rank w.r.t. the communicator associated to the topology referencing this coordinate.
numberOfDimensionsNumber of dimensions.
coordinatesCoordinates, indexed by dimension.
Since
Version 1.3
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteSourceCodeLocation ( OTF2_GlobalDefWriter writerHandle,
OTF2_SourceCodeLocationRef  self,
OTF2_StringRef  file,
uint32_t  lineNumber 
)

Writes a SourceCodeLocation definition record into the GlobalDefWriter.

The definition of a source code location as tuple of the corresponding file name and line number.

When used to attach source code annotations to events, use the OTF2_AttributeList with an Attribute definition named "SOURCE_CODE_LOCATION" and of type OTF2_TYPE_SOURCE_CODE_LOCATION.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this SourceCodeLocation definition.
fileThe name of the file for the source code location. References a String definition.
lineNumberThe line number for the source code location.
Since
Version 1.5
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallingContext ( OTF2_GlobalDefWriter writerHandle,
OTF2_CallingContextRef  self,
OTF2_RegionRef  region,
OTF2_SourceCodeLocationRef  sourceCodeLocation,
OTF2_CallingContextRef  parent 
)

Writes a CallingContext definition record into the GlobalDefWriter.

Defines a node in the calling context tree. These nodes are referenced in the CallingContextSample, CallingContextEnter, and CallingContextLeave events.

The referenced CallingContext node in these events form a path which represents the calling context at this time. This path will be partitioned into at most three sub-paths by the unwindDistance attribute. For the CallingContextLeave event, the unwindDistance is defined to be 1.

Starting from the referenced CallingContext node, the first \( N \ge 0 \) nodes were newly entered regions since the previous calling context event. The next node is a region which was not left but made progress since the previous calling context event. All other nodes did not make progress at all, and thus the regions were neither left nor entered again. The unwindDistance is then \( N + 1 \). In case the unwindDistance is \( 0 \), there are neither newly entered regions nor regions which made progress.

It is guaranteed, that the node referenced by the unwindDistance exists in the previous and current calling context. All descendants of this node's child in the previous calling context were left since the previous calling context event.

It is valid that this node is the OTF2_UNDEFINED_CALLING_CONTEXT node and that this node is already reached after unwindDistance \( - 1 \) steps. In the latter case, there exists no region which made progress, all regions in the previous calling context were left and all regions in the current calling context were newly entered.

Note that for CallingContextLeave events, the parent of the referenced CallingContext must be used as the previous calling context for the next event.

Regions which were entered with a CallingContextEnter event form an upper bound for the unwind distance, i.e., the unwindDistance points either to the parent of the last such entered region, or a node which is a descendant to this parent.

To summarize, an unwindDistance of \( 0 \) means that no regions were left, newly entered, or made any progress. An unwindDistance of \( 1 \) means that some regions were left regarding the previous calling context, no regions were newly entered, and there was progress in the region of the first node. An unwindDistance greater than \( 1 \) means that some regions were left regarding the previous calling context, there was progress in one region, and the first unwindDistance \( - 1 \) regions were newly entered.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this CallingContext definition.
regionThe region. References a Region definition.
sourceCodeLocationThe absolute source code location of this calling context. References a SourceCodeLocation definition.
parentParent ID of this context. References a CallingContext definition.
Since
Version 1.5
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallingContextProperty ( OTF2_GlobalDefWriter writerHandle,
OTF2_CallingContextRef  callingContext,
OTF2_StringRef  name,
OTF2_Type  type,
OTF2_AttributeValue  value 
)

Writes a CallingContextProperty definition record into the GlobalDefWriter.

An arbitrary key/value property for a CallingContext definition.

Parameters
writerHandleThe writer handle.
callingContextParent CallingContext definition to which this one is a supplementary definition. References a CallingContext definition.
nameProperty name. References a String definition.
typeThe type of this property. Must match with the defined type of the property.
valueThe value of this property.
Since
Version 2.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteInterruptGenerator ( OTF2_GlobalDefWriter writerHandle,
OTF2_InterruptGeneratorRef  self,
OTF2_StringRef  name,
OTF2_InterruptGeneratorMode  interruptGeneratorMode,
OTF2_Base  base,
int64_t  exponent,
uint64_t  period 
)

Writes a InterruptGenerator definition record into the GlobalDefWriter.

Defines an interrupt generator which periodically triggers CallingContextSample events. If the mode of the interrupt generator is set to OTF2_INTERRUPT_GENERATOR_MODE_TIME, the generator produces interrupts which are uniformly distributed over time, and the unit of the period is implicitly in seconds. If the mode is OTF2_INTERRUPT_GENERATOR_MODE_COUNT, the interrupt is triggered if a specific counter threshold is reached in the system. Therefore these samples are unlikely to be uniformly distributed over time. The unit of the period is then implicitly a number (threshold value).

The interrupts period in base unit (which is implicitly seconds or number, based on the mode) is derived out of the base, the exponent, and the period attributes by this formula:

base-period = period x base^exponent

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this InterruptGenerator definition.
nameThe name of this interrupt generator. References a String definition.
interruptGeneratorModeMode of the interrupt generator.
baseThe base for the period calculation.
exponentThe exponent for the period calculation.
periodThe period this interrupt generator generates interrupts.
Since
Version 1.5
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoFileProperty ( OTF2_GlobalDefWriter writerHandle,
OTF2_IoFileRef  ioFile,
OTF2_StringRef  name,
OTF2_Type  type,
OTF2_AttributeValue  value 
)

Writes a IoFileProperty definition record into the GlobalDefWriter.

Extensible annotation for the polymorphic IoFile definition class.

The tuple (ioFile, name) must be unique.

Parameters
writerHandleThe writer handle.
ioFileParent IoRegularFile definition to which this one is a supplementary definition. References a IoRegularFile definition.
nameProperty name. References a String definition.
typeThe type of this property.
valueThe value of this property.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoRegularFile ( OTF2_GlobalDefWriter writerHandle,
OTF2_IoFileRef  self,
OTF2_StringRef  name,
OTF2_SystemTreeNodeRef  scope 
)

Writes a IoRegularFile definition record into the GlobalDefWriter.

Defines a regular file from which an IoHandle can be created.

This definition is member of the polymorphic IoFile definition class. All definitions of this polymorphic definition class share the same global identifier namespace.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this IoRegularFile definition.
nameName of the file. References a String definition.
scopeDefines the physical scope of this IoRegularFile in the system tree. E.g., two IoRegularFile definitions with the same name but different scope values are physically different, thus I/O operations through IoHandles do not operate on the same file. References a SystemTreeNode definition.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoDirectory ( OTF2_GlobalDefWriter writerHandle,
OTF2_IoFileRef  self,
OTF2_StringRef  name,
OTF2_SystemTreeNodeRef  scope 
)

Writes a IoDirectory definition record into the GlobalDefWriter.

Defines a directory from which an IoHandle can be created.

This definition is member of the polymorphic IoFile definition class. All definitions of this polymorphic definition class share the same global identifier namespace.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this IoRegularFile definition.
nameName of the directory. References a String definition.
scopeDefines the physical scope of this IoDirectory in the system tree. E.g., two IoDirectory definitions with the same name but different scope values are physically different, thus I/O operations through IoHandles do not operate on the same directory. References a SystemTreeNode definition.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoHandle ( OTF2_GlobalDefWriter writerHandle,
OTF2_IoHandleRef  self,
OTF2_StringRef  name,
OTF2_IoFileRef  file,
OTF2_IoParadigmRef  ioParadigm,
OTF2_IoHandleFlag  ioHandleFlags,
OTF2_CommRef  comm,
OTF2_IoHandleRef  parent 
)

Writes a IoHandle definition record into the GlobalDefWriter.

Defines an I/O handle which will be used by subsequent I/O operations. I/O operations can only be applied to active I/O handles. An I/O handle gets active either if it was marked with the OTF2_IO_HANDLE_FLAG_PRE_CREATED flag, after it was referenced in an IoCreateHandle event, or it was referenced in the newHandle attribute of an IoDuplicateHandle event. It gets inactive if it was referenced in an IoDestroyHandle event. This life cycle can be repeated indefinitely. Though the OTF2_IO_HANDLE_FLAG_PRE_CREATED flag is unset after a IoDuplicateHandle event. All Locations of a LocationGroup have access to an active IoHandle, regardless which Location of the LocationGroup activated the IoHandle.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this IoHandle definition.
nameHandle name. References a String definition.
fileFile identifier. References a IoRegularFile, or a IoDirectory definition.
ioParadigmThe I/O paradigm. References a IoParadigm definition.
ioHandleFlagsSpecial characteristics of this handle.
commScope of the file handle. This scope defines which process can access this file via this handle and also defines the collective context for this handle. References a Comm definition.
parentParent, in case this I/O handle was created and operated by an higher-level I/O paradigm. References a IoHandle definition.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteIoPreCreatedHandleState ( OTF2_GlobalDefWriter writerHandle,
OTF2_IoHandleRef  ioHandle,
OTF2_IoAccessMode  mode,
OTF2_IoStatusFlag  statusFlags 
)

Writes a IoPreCreatedHandleState definition record into the GlobalDefWriter.

Provide the I/O access mode and status flags for pre-created IoHandles.

Only allowed once for a IoHandle definition with the OTF2_IO_HANDLE_FLAG_PRE_CREATED flag set.

Parameters
writerHandleThe writer handle.
ioHandleParent IoHandle definition to which this one is a supplementary definition. References a IoHandle definition.
modeThe access mode of the pre-created IoHandle.
statusFlagsThe status flags of the pre-created IoHandle.
Since
Version 2.1
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteCallpathParameter ( OTF2_GlobalDefWriter writerHandle,
OTF2_CallpathRef  callpath,
OTF2_ParameterRef  parameter,
OTF2_Type  type,
OTF2_AttributeValue  value 
)

Writes a CallpathParameter definition record into the GlobalDefWriter.

A parameter for a callpath definition.

Parameters
writerHandleThe writer handle.
callpathParent Callpath definition to which this one is a supplementary definition. References a Callpath definition.
parameterThe parameter of this callpath. References a Parameter definition.
typeThe type of the attribute value. Must match the type of the parameter.
valueThe value of the parameter for this callpath.
Since
Version 2.2
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
OTF2_ErrorCode OTF2_GlobalDefWriter_WriteInterComm ( OTF2_GlobalDefWriter writerHandle,
OTF2_CommRef  self,
OTF2_StringRef  name,
OTF2_GroupRef  groupA,
OTF2_GroupRef  groupB,
OTF2_CommRef  commonCommunicator,
OTF2_CommFlag  flags 
)

Writes a InterComm definition record into the GlobalDefWriter.

The inter-communicator definition.

Parameters
writerHandleThe writer handle.
selfThe unique identifier for this Comm definition.
nameThe name given by calling MPI_Comm_set_name on this communicator. Or the empty name to indicate that no name was given. References a String definition.
groupAOne of the two MPI process groups in the intercommunicator. The group needs to be of type OTF2_GROUP_TYPE_COMM_GROUP or OTF2_GROUP_TYPE_COMM_SELF. References a Group definition.
groupBThe other of the two MPI process groups in the intercommunicator. The group needs to be of type OTF2_GROUP_TYPE_COMM_GROUP or OTF2_GROUP_TYPE_COMM_SELF. References a Group definition.
commonCommunicatorThe common peer MPI communicator used to create this inter-communicator. Use OTF2_UNDEFINED_COMM if no such communicator was used. References a Comm, or a InterComm definition.
flagsSpecial characteristics of this communicator.
Since
Version 3.0
Returns
OTF2_SUCCESS if successful, an error code if an error occurs.
Examples:
otf2_mpi_writer_example.c.