00001 #ifndef __AMPI_EVENTS_H__
00002 #define __AMPI_EVENTS_H__
00003
00004 #include "../../../traceCoreAPI.h"
00005 #include "ampiProjections.h"
00006
00007 #define _AMPI_LANG_ID 4
00008
00009
00010 #define _E_BEGIN_AMPI_PROCESSING 25
00011 #define _E_END_AMPI_PROCESSING 26
00012 #define _E_AMPI_MSG_SEND 27
00013 #define _E_AMPI_BEGIN_FUNC 28
00014 #define _E_AMPI_END_FUNC 29
00015
00016
00017 #define REGISTER_AMPI LOGCONDITIONAL(\
00018 { RegisterLanguage(_AMPI_LANG_ID, "ampi\0"); \
00019 RegisterEvent(_AMPI_LANG_ID, _E_BEGIN_AMPI_PROCESSING); \
00020 RegisterEvent(_AMPI_LANG_ID, _E_END_AMPI_PROCESSING); \
00021 RegisterEvent(_AMPI_LANG_ID,_E_AMPI_MSG_SEND); \
00022 \
00023 })
00024 #define _LOG_E_BEGIN_AMPI_PROCESSING(rank,src,count) { LOGCONDITIONAL(ampi_beginProcessing(rank,src,count));}
00025 #define _LOG_E_END_AMPI_PROCESSING(rank) { LOGCONDITIONAL(ampi_endProcessing(rank));}
00026 #define _LOG_E_AMPI_MSG_SEND(tag,dest,count,size) { LOGCONDITIONAL(ampi_msgSend(tag,dest,count,size));}
00027
00028 #define _AMPI_REGISTER_FUNC(name) { LOGCONDITIONAL(ampi_registerFunc(name))}
00029 #define _LOG_E_AMPI_BEGIN_FUNC(funcName,comm) {LOGCONDITIONAL(ampi_beginFunc(funcName,comm))}
00030 #define _LOG_E_AMPI_END_FUNC(funcName,comm) {LOGCONDITIONAL(ampi_endFunc(funcName,comm))}
00031
00032 #endif