From 3ac15b151d4ac13651b949579c14c3c4c2ba7b2b Mon Sep 17 00:00:00 2001 From: Lizzzka007 <gashchuk2011@mail.ru> Date: Sat, 21 Jan 2023 21:23:42 +0300 Subject: [PATCH] #pragma to ifdef --- Event.cpp | 4 ++ Jikan.cpp | 4 ++ Jikan.h | 2 +- JikanDepths.cpp | 45 +++++++++++++++++-- Jikan copy.cpp => Old/Jikan copy.cpp | 0 Jikan copy.h => Old/Jikan copy.h | 0 Jikan-config.h => Old/Jikan-config.h | 0 .../JikanDepths copy.cpp | 0 8 files changed, 50 insertions(+), 5 deletions(-) rename Jikan copy.cpp => Old/Jikan copy.cpp (100%) rename Jikan copy.h => Old/Jikan copy.h (100%) rename Jikan-config.h => Old/Jikan-config.h (100%) rename JikanDepths copy.cpp => Old/JikanDepths copy.cpp (100%) diff --git a/Event.cpp b/Event.cpp index 344db26..fab2995 100644 --- a/Event.cpp +++ b/Event.cpp @@ -32,15 +32,19 @@ EventData::EventData() EventData::~EventData() { + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif this->time_series.clear(); this->mode.clear(); #ifdef INCLUDE_GPU_TIMER this->DeinitEventsCUDA(); #endif + #ifdef INCLUDE_OPEN_MP } + #endif } EventData::EventData(const string& name) diff --git a/Jikan.cpp b/Jikan.cpp index 8a29c09..4d0fb5b 100644 --- a/Jikan.cpp +++ b/Jikan.cpp @@ -25,11 +25,15 @@ extern "C" void WriteOutput() { + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif bool ifWrite = Timer.ifWriteProc(); if(ifWrite == true) Timer.GenerateOutputData(); + #ifdef INCLUDE_OPEN_MP } + #endif } } \ No newline at end of file diff --git a/Jikan.h b/Jikan.h index bc98a66..de2584d 100644 --- a/Jikan.h +++ b/Jikan.h @@ -4,7 +4,7 @@ #define TIMER_ON #define INCLUDE_GPU_TIMER #define INCLUDE_MPI -#define INCLUDE_OPEN_MP +// #define INCLUDE_OPEN_MP #define SAVE_TIME_SERIES #define OUTPUT_NAME "Jikan-output" diff --git a/JikanDepths.cpp b/JikanDepths.cpp index ca2344a..5c6de17 100644 --- a/JikanDepths.cpp +++ b/JikanDepths.cpp @@ -14,15 +14,19 @@ using namespace std; Jikan::Jikan() { + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif this->EventType["Synchronous events"] = set<string>(); this->EventType["Asynchronous events"] = set<string>(); this->JSONname = OUTPUT_NAME + string(".json"); this->JSONdata = ""; this->Error = ""; + #ifdef INCLUDE_OPEN_MP } + #endif }; #ifdef INCLUDE_MPI @@ -56,8 +60,10 @@ bool Jikan::ifWriteProc() Jikan::~Jikan() { + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif this->Events.clear(); map<string, set<string> >::iterator it; @@ -66,7 +72,9 @@ Jikan::~Jikan() it->second.clear(); this->EventType.clear(); + #ifdef INCLUDE_OPEN_MP } + #endif } bool Jikan::ifContains(const string& Name) @@ -85,20 +93,26 @@ void Jikan::JikanStart(const string& name, const int& mode) bool ExistFlag, ifMPI, ifOpenMP; ExistFlag = this->ifContains(name); + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif (this->Events)[name].ifStart = true; + #ifdef INCLUDE_OPEN_MP } - - // #pragma omp barrier + #endif if(!ExistFlag) { + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif (this->Events)[name] = EventData(name); (this->Events)[name].GetModeVals(mode); + #ifdef INCLUDE_OPEN_MP } + #endif } // else // { @@ -108,11 +122,16 @@ void Jikan::JikanStart(const string& name, const int& mode) // return; // } + #ifdef INCLUDE_OPEN_MP #pragma omp barrier + #endif + ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1]; + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif if(!ExistFlag) { string EventTypeName; @@ -129,19 +148,27 @@ void Jikan::JikanStart(const string& name, const int& mode) if(ifMPI) this->BarrierMPI(); //--------------------------------------------------------------------------------------- + #ifdef INCLUDE_OPEN_MP } + #endif //--------------------------- OpenMP synchronization -------------------------------- if(ifOpenMP) { - #pragma omp barrier + #ifdef INCLUDE_OPEN_MP + #pragma omp barrier + #endif } //----------------------------------------------------------------------------------- + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif this->StartEvent(name); + #ifdef INCLUDE_OPEN_MP } + #endif } void Jikan::JikanEnd(const string& name) @@ -157,8 +184,10 @@ void Jikan::JikanEnd(const string& name) ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1], ifCUDA = (this->Events)[name].mode[2]; + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif if((ifCUDA) && (!ifMPI) && (!ifOpenMP)) { #ifdef INCLUDE_GPU_TIMER @@ -166,25 +195,33 @@ void Jikan::JikanEnd(const string& name) this->CUDAGetTime(name); #endif } + #ifdef INCLUDE_OPEN_MP } + #endif //--------------------------- OpenMP synchronization -------------------------------- if(ifOpenMP) { - #pragma omp barrier + #ifdef INCLUDE_OPEN_MP + #pragma omp barrier + #endif } //----------------------------------------------------------------------------------- //--------------------------- MPI synchronization --------------------------------------- + #ifdef INCLUDE_OPEN_MP #pragma omp master { + #endif if(ifMPI) this->BarrierMPI(); (this->Events)[name].ifStart = false; this->EndEvent(name); + #ifdef INCLUDE_OPEN_MP } + #endif //--------------------------------------------------------------------------------------- } diff --git a/Jikan copy.cpp b/Old/Jikan copy.cpp similarity index 100% rename from Jikan copy.cpp rename to Old/Jikan copy.cpp diff --git a/Jikan copy.h b/Old/Jikan copy.h similarity index 100% rename from Jikan copy.h rename to Old/Jikan copy.h diff --git a/Jikan-config.h b/Old/Jikan-config.h similarity index 100% rename from Jikan-config.h rename to Old/Jikan-config.h diff --git a/JikanDepths copy.cpp b/Old/JikanDepths copy.cpp similarity index 100% rename from JikanDepths copy.cpp rename to Old/JikanDepths copy.cpp -- GitLab