cudaEvent_t
首先包含头文件:
#include<cuda_runtime.h>
然后要包含宏:
static void HandleError( cudaError_t err,
const char *file,
int line ) {
if (err != cudaSuccess) {
printf( "%s in %s at line %d\n", cudaGetErrorString( err ),
file, line );
exit( EXIT_FAILURE );
}
}
#define HANDLE_ERROR( err ) (HandleError( err, __FILE__, __LINE__ ))
然后测试代码:
float elapsed=0;
cudaEvent_t start, stop;
HANDLE_ERROR(cudaEventCreate(&start));
HANDLE_ERROR(cudaEventCreate(&stop));
HANDLE_ERROR( cudaEventRecord(start, 0));
//!!!!!!!!!!!!!!!!!这一部分添加你要测试的基于CUDA运行的代码!!!!!!!
HANDLE_ERROR(cudaEventRecord(stop, 0));
HANDLE_ERROR(cudaEventSynchronize (stop) );
HANDLE_ERROR(cudaEventElapsedTime(&elapsed, start, stop) );
HANDLE_ERROR(cudaEventDestroy(start));
HANDLE_ERROR(cudaEventDestroy(stop));
std::cout<<"elapsed:"<<elapsed<<std::endl;