Skip to content
Snippets Groups Projects
JikanDepths.cu 799 B
Newer Older
  • Learn to ignore specific revisions
  • #include <sys/time.h>
    #include <cuda.h>
    #include <cuda_runtime.h>
    #include "JikanDepths.h"
    
    #ifdef INCLUDE_OPEN_MP
        #include "omp.h"
    #endif
    
    using namespace std;
    
    
    void Jikan::StartCUDASync(const string& name)
    
    {
    	cudaEventRecord ((this->Events)[name].gpu_start);
    }
    
    
    void Jikan::EndCUDASync(const string& name)
    
    {
        cudaEventRecord((this->Events)[name].gpu_end);
    	cudaEventSynchronize((this->Events)[name].gpu_end);
    
    数学の武士's avatar
    数学の武士 committed
    }
    
    void Jikan::CUDAGetTime(const string& name)
    
    数学の武士's avatar
    数学の武士 committed
    {
        float GPUtime = 0.0;
        cudaEventElapsedTime(&GPUtime, (this->Events)[name].gpu_start, (this->Events)[name].gpu_end );
        GPUtime *= 1e-3;
        (this->Events)[name].elapsed_time += GPUtime;
        (this->Events)[name].count ++;
    
    数学の武士's avatar
    数学の武士 committed
        #ifdef SAVE_TIME_SERIES
            (this->Events)[name].time_series.push_back(GPUtime);
        #endif