Skip to content
Snippets Groups Projects
Commit 931b20d4 authored by 数学の武士's avatar 数学の武士
Browse files

Hotfix

parent 94aacfb8
No related branches found
No related tags found
No related merge requests found
...@@ -90,7 +90,7 @@ void Jikan::Jikan_start(const string& name, const int& mode) ...@@ -90,7 +90,7 @@ void Jikan::Jikan_start(const string& name, const int& mode)
(this->Events)[name].ifStart = true; (this->Events)[name].ifStart = true;
} }
#pragma omp barrier // #pragma omp barrier
if(!ExistFlag) if(!ExistFlag)
{ {
...@@ -100,13 +100,13 @@ void Jikan::Jikan_start(const string& name, const int& mode) ...@@ -100,13 +100,13 @@ void Jikan::Jikan_start(const string& name, const int& mode)
(this->Events)[name].GetModeVals(mode); (this->Events)[name].GetModeVals(mode);
} }
} }
else // else
{ // {
bool ifStart = (this->Events)[name].ifStart; // bool ifStart = (this->Events)[name].ifStart;
if(!ifStart) // if(!ifStart)
return; // return;
} // }
#pragma omp barrier #pragma omp barrier
ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1]; ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1];
...@@ -140,7 +140,7 @@ void Jikan::Jikan_start(const string& name, const int& mode) ...@@ -140,7 +140,7 @@ void Jikan::Jikan_start(const string& name, const int& mode)
#pragma omp master #pragma omp master
{ {
this->StartEventTimer(name); this->StartEvent(name);
} }
} }
...@@ -163,6 +163,7 @@ void Jikan::Jikan_end(const string& name) ...@@ -163,6 +163,7 @@ void Jikan::Jikan_end(const string& name)
{ {
#ifdef INCLUDE_GPU_TIMER #ifdef INCLUDE_GPU_TIMER
this->cuda_Jikan_end(name); this->cuda_Jikan_end(name);
this->cuda_get_time(name);
#endif #endif
} }
} }
...@@ -182,7 +183,7 @@ void Jikan::Jikan_end(const string& name) ...@@ -182,7 +183,7 @@ void Jikan::Jikan_end(const string& name)
(this->Events)[name].ifStart = false; (this->Events)[name].ifStart = false;
this->EndEventTimer(name); this->EndEvent(name);
} }
//--------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------
} }
...@@ -254,7 +255,7 @@ void Jikan::SetDumpFilename(const string& name) ...@@ -254,7 +255,7 @@ void Jikan::SetDumpFilename(const string& name)
this->JSONname = name; this->JSONname = name;
} }
void Jikan::StartEventTimer(const string& name) void Jikan::StartEvent(const string& name)
{ {
bool ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1], ifCUDA = (this->Events)[name].mode[2]; bool ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1], ifCUDA = (this->Events)[name].mode[2];
...@@ -274,14 +275,14 @@ void Jikan::StartEventTimer(const string& name) ...@@ -274,14 +275,14 @@ void Jikan::StartEventTimer(const string& name)
(this->Events)[name].start = chrono::steady_clock::now(); (this->Events)[name].start = chrono::steady_clock::now();
} }
void Jikan::EndEventTimer(const string& name) void Jikan::EndEvent(const string& name)
{ {
bool ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1], ifCUDA = (this->Events)[name].mode[2]; bool ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1], ifCUDA = (this->Events)[name].mode[2];
if((ifCUDA)) if((ifCUDA))
{ {
#ifdef INCLUDE_GPU_TIMER #ifdef INCLUDE_GPU_TIMER
this->cuda_Jikan_start(name); this->cuda_Jikan_end(name);
#endif #endif
} }
......
...@@ -18,10 +18,9 @@ void Jikan::cuda_Jikan_end(const string& name) ...@@ -18,10 +18,9 @@ void Jikan::cuda_Jikan_end(const string& name)
{ {
cudaEventRecord((this->Events)[name].gpu_end); cudaEventRecord((this->Events)[name].gpu_end);
cudaEventSynchronize((this->Events)[name].gpu_end); cudaEventSynchronize((this->Events)[name].gpu_end);
}
bool ifMPI = (this->Events)[name].mode[0], ifOpenMP = (this->Events)[name].mode[1], ifCUDA = (this->Events)[name].mode[2]; void Jikan::cuda_get_time(const string& name)
if((ifCUDA) && (!ifMPI) && (!ifOpenMP))
{ {
float GPUtime = 0.0; float GPUtime = 0.0;
cudaEventElapsedTime(&GPUtime, (this->Events)[name].gpu_start, (this->Events)[name].gpu_end ); cudaEventElapsedTime(&GPUtime, (this->Events)[name].gpu_start, (this->Events)[name].gpu_end );
...@@ -33,4 +32,3 @@ void Jikan::cuda_Jikan_end(const string& name) ...@@ -33,4 +32,3 @@ void Jikan::cuda_Jikan_end(const string& name)
(this->Events)[name].time_series.push_back(GPUtime); (this->Events)[name].time_series.push_back(GPUtime);
#endif #endif
} }
\ No newline at end of file
}
\ No newline at end of file
...@@ -48,6 +48,10 @@ public: ...@@ -48,6 +48,10 @@ public:
private: private:
void StartTimer(const std::string& name); void StartTimer(const std::string& name);
void BarrierMPI(); void BarrierMPI();
void StartEventTimer(const std::string& name); void StartEvent(const std::string& name);
void EndEventTimer(const std::string& name); void EndEvent(const std::string& name);
#ifdef INCLUDE_GPU_TIMER
void cuda_get_time(const string& name);
#endif
}; };
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment