CUDA计时

CUDA计时

事件计时

  • 程序执行时间计时时:是CUDA程序执行性能的重要表现;
  • 使用CUDA事件(event)计时方式;
  • CUDA事件记时可以为主机代码计时,也可以为设备代码计时。
cudaEvent_t start, stop;
ErrorCheck(cudaEventCreate(&start), __FILE__, __LINE__);
ErrorCheck(cudaEventCreate(&stop), __FILE__, __LINE__);
ErrorCheck(cudaEventRecord(start), __FILE__, __LINE__);
cudaEventQuery(start);
/*******
//需要计时的代码
******/
ErrorCheck(cudaEventRecord(stop), __FILE__, __LINE__);
ErrorCheck(cudaEventSynchronize(stop), __FILE__, __LINE__);
float elapse_time;
ErrorCheck(cudaEventElapsedTime(elapse_time, start, stop), __FILE__, __LINE__);
printf("elapse_time %f\n", elapse_time);
ErrorCheck(cudaEventDestory(start), __FILE__, __LINE__);
ErrorCheck(cudaEventDestory(stop), __FILE__, __LINE__);

nvprof 性能刨析

  • nvprof是一个可执行性文件
  • 执行命令:nvprof./exe_name

你可能感兴趣的:(cuda编程,人工智能,linux,深度学习,c++)