1.2 (revision 3183)

OTF2_EvtWriter.h

Go to the documentation of this file.
00001 /*
00002  * This file is part of the Score-P software (http://www.score-p.org)
00003  *
00004  * Copyright (c) 2009-2012,
00005  *    RWTH Aachen University, Germany
00006  *    Gesellschaft fuer numerische Simulation mbH Braunschweig, Germany
00007  *    Technische Universitaet Dresden, Germany
00008  *    University of Oregon, Eugene, USA
00009  *    Forschungszentrum Juelich GmbH, Germany
00010  *    German Research School for Simulation Sciences GmbH, Juelich/Aachen, Germany
00011  *    Technische Universitaet Muenchen, Germany
00012  *
00013  * See the COPYING file in the package base directory for details.
00014  *
00015  */
00016 
00017 
00018 #ifndef OTF2_EVT_WRITER_H
00019 #define OTF2_EVT_WRITER_H
00020 
00021 
00036 #include <stdint.h>
00037 
00038 
00039 #include <otf2/OTF2_ErrorCodes.h>
00040 
00041 
00042 #include <otf2/OTF2_Events.h>
00043 #include <otf2/OTF2_AttributeList.h>
00044 
00045 
00046 #ifdef __cplusplus
00047 extern "C" {
00048 #endif /* __cplusplus */
00049 
00050 
00053 typedef struct OTF2_EvtWriter_struct OTF2_EvtWriter;
00054 
00055 
00064 OTF2_ErrorCode
00065 OTF2_EvtWriter_GetLocationID( const OTF2_EvtWriter* writer,
00066                               OTF2_LocationRef*     locationID );
00067 
00068 
00078 OTF2_ErrorCode
00079 OTF2_EvtWriter_SetUserData( OTF2_EvtWriter* writer,
00080                             void*           userData );
00081 
00082 
00091 OTF2_ErrorCode
00092 OTF2_EvtWriter_GetUserData( const OTF2_EvtWriter* writer,
00093                             void**                userData );
00094 
00095 
00106 OTF2_ErrorCode
00107 OTF2_EvtWriter_SetLocationID( OTF2_EvtWriter*  writer,
00108                               OTF2_LocationRef location );
00109 
00110 
00122 OTF2_ErrorCode
00123 OTF2_EvtWriter_GetNumberOfEvents( OTF2_EvtWriter* writer,
00124                                   uint64_t*       numberOfEvents );
00125 
00126 
00142 OTF2_ErrorCode
00143 OTF2_EvtWriter_BufferFlush( OTF2_EvtWriter*     writer,
00144                             OTF2_AttributeList* attributeList,
00145                             OTF2_TimeStamp      time,
00146                             OTF2_TimeStamp      stopTime );
00147 
00148 
00166 OTF2_ErrorCode
00167 OTF2_EvtWriter_MeasurementOnOff( OTF2_EvtWriter*      writer,
00168                                  OTF2_AttributeList*  attributeList,
00169                                  OTF2_TimeStamp       time,
00170                                  OTF2_MeasurementMode measurementMode );
00171 
00172 
00190 OTF2_ErrorCode
00191 OTF2_EvtWriter_Enter( OTF2_EvtWriter*     writer,
00192                       OTF2_AttributeList* attributeList,
00193                       OTF2_TimeStamp      time,
00194                       OTF2_RegionRef      region );
00195 
00196 
00214 OTF2_ErrorCode
00215 OTF2_EvtWriter_Leave( OTF2_EvtWriter*     writer,
00216                       OTF2_AttributeList* attributeList,
00217                       OTF2_TimeStamp      time,
00218                       OTF2_RegionRef      region );
00219 
00220 
00244 OTF2_ErrorCode
00245 OTF2_EvtWriter_MpiSend( OTF2_EvtWriter*     writer,
00246                         OTF2_AttributeList* attributeList,
00247                         OTF2_TimeStamp      time,
00248                         uint32_t            receiver,
00249                         OTF2_CommRef        communicator,
00250                         uint32_t            msgTag,
00251                         uint64_t            msgLength );
00252 
00253 
00278 OTF2_ErrorCode
00279 OTF2_EvtWriter_MpiIsend( OTF2_EvtWriter*     writer,
00280                          OTF2_AttributeList* attributeList,
00281                          OTF2_TimeStamp      time,
00282                          uint32_t            receiver,
00283                          OTF2_CommRef        communicator,
00284                          uint32_t            msgTag,
00285                          uint64_t            msgLength,
00286                          uint64_t            requestID );
00287 
00288 
00303 OTF2_ErrorCode
00304 OTF2_EvtWriter_MpiIsendComplete( OTF2_EvtWriter*     writer,
00305                                  OTF2_AttributeList* attributeList,
00306                                  OTF2_TimeStamp      time,
00307                                  uint64_t            requestID );
00308 
00309 
00324 OTF2_ErrorCode
00325 OTF2_EvtWriter_MpiIrecvRequest( OTF2_EvtWriter*     writer,
00326                                 OTF2_AttributeList* attributeList,
00327                                 OTF2_TimeStamp      time,
00328                                 uint64_t            requestID );
00329 
00330 
00354 OTF2_ErrorCode
00355 OTF2_EvtWriter_MpiRecv( OTF2_EvtWriter*     writer,
00356                         OTF2_AttributeList* attributeList,
00357                         OTF2_TimeStamp      time,
00358                         uint32_t            sender,
00359                         OTF2_CommRef        communicator,
00360                         uint32_t            msgTag,
00361                         uint64_t            msgLength );
00362 
00363 
00388 OTF2_ErrorCode
00389 OTF2_EvtWriter_MpiIrecv( OTF2_EvtWriter*     writer,
00390                          OTF2_AttributeList* attributeList,
00391                          OTF2_TimeStamp      time,
00392                          uint32_t            sender,
00393                          OTF2_CommRef        communicator,
00394                          uint32_t            msgTag,
00395                          uint64_t            msgLength,
00396                          uint64_t            requestID );
00397 
00398 
00414 OTF2_ErrorCode
00415 OTF2_EvtWriter_MpiRequestTest( OTF2_EvtWriter*     writer,
00416                                OTF2_AttributeList* attributeList,
00417                                OTF2_TimeStamp      time,
00418                                uint64_t            requestID );
00419 
00420 
00435 OTF2_ErrorCode
00436 OTF2_EvtWriter_MpiRequestCancelled( OTF2_EvtWriter*     writer,
00437                                     OTF2_AttributeList* attributeList,
00438                                     OTF2_TimeStamp      time,
00439                                     uint64_t            requestID );
00440 
00441 
00457 OTF2_ErrorCode
00458 OTF2_EvtWriter_MpiCollectiveBegin( OTF2_EvtWriter*     writer,
00459                                    OTF2_AttributeList* attributeList,
00460                                    OTF2_TimeStamp      time  );
00461 
00462 
00487 OTF2_ErrorCode
00488 OTF2_EvtWriter_MpiCollectiveEnd( OTF2_EvtWriter*     writer,
00489                                  OTF2_AttributeList* attributeList,
00490                                  OTF2_TimeStamp      time,
00491                                  OTF2_CollectiveOp   collectiveOp,
00492                                  OTF2_CommRef        communicator,
00493                                  uint32_t            root,
00494                                  uint64_t            sizeSent,
00495                                  uint64_t            sizeReceived );
00496 
00497 
00518 OTF2_ErrorCode
00519 OTF2_EvtWriter_OmpFork( OTF2_EvtWriter*     writer,
00520                         OTF2_AttributeList* attributeList,
00521                         OTF2_TimeStamp      time,
00522                         uint32_t            numberOfRequestedThreads );
00523 
00524 
00546 OTF2_ErrorCode
00547 OTF2_EvtWriter_OmpJoin( OTF2_EvtWriter*     writer,
00548                         OTF2_AttributeList* attributeList,
00549                         OTF2_TimeStamp      time  );
00550 
00551 
00577 OTF2_ErrorCode
00578 OTF2_EvtWriter_OmpAcquireLock( OTF2_EvtWriter*     writer,
00579                                OTF2_AttributeList* attributeList,
00580                                OTF2_TimeStamp      time,
00581                                uint32_t            lockID,
00582                                uint32_t            acquisitionOrder );
00583 
00584 
00610 OTF2_ErrorCode
00611 OTF2_EvtWriter_OmpReleaseLock( OTF2_EvtWriter*     writer,
00612                                OTF2_AttributeList* attributeList,
00613                                OTF2_TimeStamp      time,
00614                                uint32_t            lockID,
00615                                uint32_t            acquisitionOrder );
00616 
00617 
00639 OTF2_ErrorCode
00640 OTF2_EvtWriter_OmpTaskCreate( OTF2_EvtWriter*     writer,
00641                               OTF2_AttributeList* attributeList,
00642                               OTF2_TimeStamp      time,
00643                               uint64_t            taskID );
00644 
00645 
00669 OTF2_ErrorCode
00670 OTF2_EvtWriter_OmpTaskSwitch( OTF2_EvtWriter*     writer,
00671                               OTF2_AttributeList* attributeList,
00672                               OTF2_TimeStamp      time,
00673                               uint64_t            taskID );
00674 
00675 
00697 OTF2_ErrorCode
00698 OTF2_EvtWriter_OmpTaskComplete( OTF2_EvtWriter*     writer,
00699                                 OTF2_AttributeList* attributeList,
00700                                 OTF2_TimeStamp      time,
00701                                 uint64_t            taskID );
00702 
00703 
00729 OTF2_ErrorCode
00730 OTF2_EvtWriter_Metric( OTF2_EvtWriter*         writer,
00731                        OTF2_AttributeList*     attributeList,
00732                        OTF2_TimeStamp          time,
00733                        OTF2_MetricRef          metric,
00734                        uint8_t                 numberOfMetrics,
00735                        const OTF2_Type*        typeIDs,
00736                        const OTF2_MetricValue* metricValues );
00737 
00738 
00760 OTF2_ErrorCode
00761 OTF2_EvtWriter_ParameterString( OTF2_EvtWriter*     writer,
00762                                 OTF2_AttributeList* attributeList,
00763                                 OTF2_TimeStamp      time,
00764                                 OTF2_ParameterRef   parameter,
00765                                 OTF2_StringRef      string );
00766 
00767 
00786 OTF2_ErrorCode
00787 OTF2_EvtWriter_ParameterInt( OTF2_EvtWriter*     writer,
00788                              OTF2_AttributeList* attributeList,
00789                              OTF2_TimeStamp      time,
00790                              OTF2_ParameterRef   parameter,
00791                              int64_t             value );
00792 
00793 
00812 OTF2_ErrorCode
00813 OTF2_EvtWriter_ParameterUnsignedInt( OTF2_EvtWriter*     writer,
00814                                      OTF2_AttributeList* attributeList,
00815                                      OTF2_TimeStamp      time,
00816                                      OTF2_ParameterRef   parameter,
00817                                      uint64_t            value );
00818 
00819 
00836 OTF2_ErrorCode
00837 OTF2_EvtWriter_RmaWinCreate( OTF2_EvtWriter*     writer,
00838                              OTF2_AttributeList* attributeList,
00839                              OTF2_TimeStamp      time,
00840                              OTF2_RmaWinRef      win );
00841 
00842 
00859 OTF2_ErrorCode
00860 OTF2_EvtWriter_RmaWinDestroy( OTF2_EvtWriter*     writer,
00861                               OTF2_AttributeList* attributeList,
00862                               OTF2_TimeStamp      time,
00863                               OTF2_RmaWinRef      win );
00864 
00865 
00881 OTF2_ErrorCode
00882 OTF2_EvtWriter_RmaCollectiveBegin( OTF2_EvtWriter*     writer,
00883                                    OTF2_AttributeList* attributeList,
00884                                    OTF2_TimeStamp      time  );
00885 
00886 
00910 OTF2_ErrorCode
00911 OTF2_EvtWriter_RmaCollectiveEnd( OTF2_EvtWriter*     writer,
00912                                  OTF2_AttributeList* attributeList,
00913                                  OTF2_TimeStamp      time,
00914                                  OTF2_CollectiveOp   collectiveOp,
00915                                  OTF2_RmaSyncLevel   syncLevel,
00916                                  OTF2_RmaWinRef      win,
00917                                  uint32_t            root,
00918                                  uint64_t            bytesSent,
00919                                  uint64_t            bytesReceived );
00920 
00921 
00945 OTF2_ErrorCode
00946 OTF2_EvtWriter_RmaGroupSync( OTF2_EvtWriter*     writer,
00947                              OTF2_AttributeList* attributeList,
00948                              OTF2_TimeStamp      time,
00949                              OTF2_RmaSyncLevel   syncLevel,
00950                              OTF2_RmaWinRef      win,
00951                              OTF2_GroupRef       group );
00952 
00953 
00978 OTF2_ErrorCode
00979 OTF2_EvtWriter_RmaRequestLock( OTF2_EvtWriter*     writer,
00980                                OTF2_AttributeList* attributeList,
00981                                OTF2_TimeStamp      time,
00982                                OTF2_RmaWinRef      win,
00983                                uint32_t            remote,
00984                                uint64_t            lockId,
00985                                OTF2_LockType       lockType );
00986 
00987 
01010 OTF2_ErrorCode
01011 OTF2_EvtWriter_RmaAcquireLock( OTF2_EvtWriter*     writer,
01012                                OTF2_AttributeList* attributeList,
01013                                OTF2_TimeStamp      time,
01014                                OTF2_RmaWinRef      win,
01015                                uint32_t            remote,
01016                                uint64_t            lockId,
01017                                OTF2_LockType       lockType );
01018 
01019 
01042 OTF2_ErrorCode
01043 OTF2_EvtWriter_RmaTryLock( OTF2_EvtWriter*     writer,
01044                            OTF2_AttributeList* attributeList,
01045                            OTF2_TimeStamp      time,
01046                            OTF2_RmaWinRef      win,
01047                            uint32_t            remote,
01048                            uint64_t            lockId,
01049                            OTF2_LockType       lockType );
01050 
01051 
01072 OTF2_ErrorCode
01073 OTF2_EvtWriter_RmaReleaseLock( OTF2_EvtWriter*     writer,
01074                                OTF2_AttributeList* attributeList,
01075                                OTF2_TimeStamp      time,
01076                                OTF2_RmaWinRef      win,
01077                                uint32_t            remote,
01078                                uint64_t            lockId );
01079 
01080 
01101 OTF2_ErrorCode
01102 OTF2_EvtWriter_RmaSync( OTF2_EvtWriter*     writer,
01103                         OTF2_AttributeList* attributeList,
01104                         OTF2_TimeStamp      time,
01105                         OTF2_RmaWinRef      win,
01106                         uint32_t            remote,
01107                         OTF2_RmaSyncType    syncType );
01108 
01109 
01127 OTF2_ErrorCode
01128 OTF2_EvtWriter_RmaWaitChange( OTF2_EvtWriter*     writer,
01129                               OTF2_AttributeList* attributeList,
01130                               OTF2_TimeStamp      time,
01131                               OTF2_RmaWinRef      win );
01132 
01133 
01154 OTF2_ErrorCode
01155 OTF2_EvtWriter_RmaPut( OTF2_EvtWriter*     writer,
01156                        OTF2_AttributeList* attributeList,
01157                        OTF2_TimeStamp      time,
01158                        OTF2_RmaWinRef      win,
01159                        uint32_t            remote,
01160                        uint64_t            bytes,
01161                        uint64_t            matchingId );
01162 
01163 
01184 OTF2_ErrorCode
01185 OTF2_EvtWriter_RmaGet( OTF2_EvtWriter*     writer,
01186                        OTF2_AttributeList* attributeList,
01187                        OTF2_TimeStamp      time,
01188                        OTF2_RmaWinRef      win,
01189                        uint32_t            remote,
01190                        uint64_t            bytes,
01191                        uint64_t            matchingId );
01192 
01193 
01216 OTF2_ErrorCode
01217 OTF2_EvtWriter_RmaAtomic( OTF2_EvtWriter*     writer,
01218                           OTF2_AttributeList* attributeList,
01219                           OTF2_TimeStamp      time,
01220                           OTF2_RmaWinRef      win,
01221                           uint32_t            remote,
01222                           OTF2_RmaAtomicType  type,
01223                           uint64_t            bytesSent,
01224                           uint64_t            bytesReceived,
01225                           uint64_t            matchingId );
01226 
01227 
01247 OTF2_ErrorCode
01248 OTF2_EvtWriter_RmaOpCompleteBlocking( OTF2_EvtWriter*     writer,
01249                                       OTF2_AttributeList* attributeList,
01250                                       OTF2_TimeStamp      time,
01251                                       OTF2_RmaWinRef      win,
01252                                       uint64_t            matchingId );
01253 
01254 
01274 OTF2_ErrorCode
01275 OTF2_EvtWriter_RmaOpCompleteNonBlocking( OTF2_EvtWriter*     writer,
01276                                          OTF2_AttributeList* attributeList,
01277                                          OTF2_TimeStamp      time,
01278                                          OTF2_RmaWinRef      win,
01279                                          uint64_t            matchingId );
01280 
01281 
01301 OTF2_ErrorCode
01302 OTF2_EvtWriter_RmaOpTest( OTF2_EvtWriter*     writer,
01303                           OTF2_AttributeList* attributeList,
01304                           OTF2_TimeStamp      time,
01305                           OTF2_RmaWinRef      win,
01306                           uint64_t            matchingId );
01307 
01308 
01328 OTF2_ErrorCode
01329 OTF2_EvtWriter_RmaOpCompleteRemote( OTF2_EvtWriter*     writer,
01330                                     OTF2_AttributeList* attributeList,
01331                                     OTF2_TimeStamp      time,
01332                                     OTF2_RmaWinRef      win,
01333                                     uint64_t            matchingId );
01334 
01335 
01351 OTF2_ErrorCode
01352 OTF2_EvtWriter_ThreadFork( OTF2_EvtWriter*     writer,
01353                            OTF2_AttributeList* attributeList,
01354                            OTF2_TimeStamp      time,
01355                            OTF2_Paradigm       model,
01356                            uint32_t            numberOfRequestedThreads );
01357 
01358 
01374 OTF2_ErrorCode
01375 OTF2_EvtWriter_ThreadJoin( OTF2_EvtWriter*     writer,
01376                            OTF2_AttributeList* attributeList,
01377                            OTF2_TimeStamp      time,
01378                            OTF2_Paradigm       model );
01379 
01380 
01397 OTF2_ErrorCode
01398 OTF2_EvtWriter_ThreadTeamBegin( OTF2_EvtWriter*     writer,
01399                                 OTF2_AttributeList* attributeList,
01400                                 OTF2_TimeStamp      time,
01401                                 OTF2_CommRef        threadTeam );
01402 
01403 
01420 OTF2_ErrorCode
01421 OTF2_EvtWriter_ThreadTeamEnd( OTF2_EvtWriter*     writer,
01422                               OTF2_AttributeList* attributeList,
01423                               OTF2_TimeStamp      time,
01424                               OTF2_CommRef        threadTeam );
01425 
01426 
01447 OTF2_ErrorCode
01448 OTF2_EvtWriter_ThreadAcquireLock( OTF2_EvtWriter*     writer,
01449                                   OTF2_AttributeList* attributeList,
01450                                   OTF2_TimeStamp      time,
01451                                   OTF2_Paradigm       model,
01452                                   uint32_t            lockID,
01453                                   uint32_t            acquisitionOrder );
01454 
01455 
01476 OTF2_ErrorCode
01477 OTF2_EvtWriter_ThreadReleaseLock( OTF2_EvtWriter*     writer,
01478                                   OTF2_AttributeList* attributeList,
01479                                   OTF2_TimeStamp      time,
01480                                   OTF2_Paradigm       model,
01481                                   uint32_t            lockID,
01482                                   uint32_t            acquisitionOrder );
01483 
01484 
01507 OTF2_ErrorCode
01508 OTF2_EvtWriter_ThreadTaskCreate( OTF2_EvtWriter*     writer,
01509                                  OTF2_AttributeList* attributeList,
01510                                  OTF2_TimeStamp      time,
01511                                  OTF2_CommRef        threadTeam,
01512                                  uint32_t            creatingThread,
01513                                  uint32_t            generationNumber );
01514 
01515 
01539 OTF2_ErrorCode
01540 OTF2_EvtWriter_ThreadTaskSwitch( OTF2_EvtWriter*     writer,
01541                                  OTF2_AttributeList* attributeList,
01542                                  OTF2_TimeStamp      time,
01543                                  OTF2_CommRef        threadTeam,
01544                                  uint32_t            creatingThread,
01545                                  uint32_t            generationNumber );
01546 
01547 
01569 OTF2_ErrorCode
01570 OTF2_EvtWriter_ThreadTaskComplete( OTF2_EvtWriter*     writer,
01571                                    OTF2_AttributeList* attributeList,
01572                                    OTF2_TimeStamp      time,
01573                                    OTF2_CommRef        threadTeam,
01574                                    uint32_t            creatingThread,
01575                                    uint32_t            generationNumber );
01576 
01577 
01587 OTF2_ErrorCode
01588 OTF2_EvtWriter_StoreRewindPoint( OTF2_EvtWriter* writer,
01589                                  uint32_t        rewindId );
01590 
01591 
01601 OTF2_ErrorCode
01602 OTF2_EvtWriter_Rewind( OTF2_EvtWriter* writer,
01603                        uint32_t        rewindId );
01604 
01605 
01615 OTF2_ErrorCode
01616 OTF2_EvtWriter_ClearRewindPoint( OTF2_EvtWriter* writer,
01617                                  uint32_t        rewindId );
01618 
01619 
01620 #ifdef __cplusplus
01621 }
01622 #endif /* __cplusplus */
01623 
01624 
01625 #endif /* !OTF2_EVT_WRITER_H */