device not ready cuda

问题描述:

CUDA: 使用cudaEventElapsedTime时返回device not ready error

强调下我是用谷歌大神搜索到的结构哦!

http://stackoverflow.com/questions/6551121/cuda-cudaeventelapsedtime-returns-device-not-ready-error

我自己的环境是用的Tesla C2070 GPU,也不知道为什么会出现这个问题,但是根据网上这个方法是可以解决问题的。

方案如下:

 1         cudaError_t err;
 2         cudaEvent_t start, stop;
 3         cudaEventCreate(&start);
 4         cudaEventCreate(&stop);
 5         err = cudaEventRecord(start, 0);
 6         f(err != cudaSuccess) {
 7           printf ("\n\n 1. Error: %s\n\n", cudaGetErrorString(err));
 8           exit(1);
 9         }
10         // actual code
11         cudaThreadSynchronize();
12         err = cudaEventRecord(stop, 0);
13         if(err != cudaSuccess) {
14           printf ("\n\n2. Error: %s\n\n", cudaGetErrorString(err));
15           exit(1);
16         }
17         err = cudaEventElapsedTime(&elapsed_time, start, stop);
18         f(err != cudaSuccess) {
19           printf ("\n\n 3. Error: %s\n\n", cudaGetErrorString(err));
20           exit(1);
21         }

对如上代码调整如下:

将11行代码和12行代码对换位置。

这样就OK了!

但是,如果GPU是其他结构的如fermi架构就不用修改,原因未知!

时间: 2024-10-13 03:14:19

device not ready cuda的相关文章

Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明2

1. 安装build-essentials 安装开发所需要的一些基本包 sudo apt-get install build-essential 2. 安装NVIDIA驱动 (3.4.0) 2.1 准备工作(2014-12-03更新) 在关闭桌面管理 lightdm 的情况下安装驱动似乎可以实现Intel 核芯显卡 来显示 + NVIDIA 显卡来计算.具体步骤如下: 1. 首先在BIOS设置里选择用Intel显卡来显示或作为主要显示设备 2. 进入Ubuntu, 按 ctrl+alt+F1 进

OpenCL Device Information

1 #include <stdio.h> 2 #include <stdlib.h> 3 4 #ifdef __APPLE__ 5 #include <OpenCL/opencl.h> 6 #else 7 #include <CL/cl.h> 8 #endif 9 10 11 12 #define MEM_SIZE (128) 13 #define MAX_SOURCE_SIZE (0x100000) 14 15 int main() 16 { 17 cl_

NVIDIA Jetson TK1学习与开发(六):如何安装CUDA

本文介绍如何安装CUDA,以CUDA6.0为例介绍. 1.Installing the CUDA Toolkit onto your device for native CUDA development Download the .deb file for the CUDA Toolkit for L4T either using a web browser on the device, or download on your PC then copy the file to your devi

Deep Learning 学习总结(一)&mdash;&mdash; Caffe Ubuntu14.04 CUDA 6.5 配置

Caffe (Convolution Architecture For Feature Extraction)作为深度学习CNN一个非常火的框架,对于初学者来说,搭建Linux下的Caffe平台是学习深度学习关键的一步,其过程也比较繁琐,回想起当初折腾的那几天,遂总结一下Ubuntu14.04的配置过程,方便以后新手能在此少走弯路. 1. 安装build-essentials 安装开发所需要的一些基本包 sudo apt-get install build-essential 2. 安装NVID

CUDA ---- Stream and Event

Stream 一般来说,cuda c并行性表现在下面两个层面上: Kernel level Grid level 到目前为止,我们讨论的一直是kernel level的,也就是一个kernel或者一个task由许多thread并行的执行在GPU上.Stream的概念是相对于后者来说的,Grid level是指多个kernel在一个device上同时执行. Stream和event简介 Cuda stream是指一堆异步的cuda操作,他们按照host代码调用的顺序执行在device上.Strea

Windows平台CUDA开发之前的准备工作

CUDA是NVIDIA的GPU开发工具,目前在大规模并行计算领域有着广泛应用. windows平台上面的CUDA开发之前,最好去NVIDIA官网查看说明,然后下载相应的driver, ToolKits等等.如果你下载最新版本的CUDA7.0,里面其实已经包含了driver及Tool kits. 特别要注意:目标最高版本为CUDA7.0,仅支持64位系统(32位没法安装CUDA 7.0 Tool Kits),另外,VS编译平台最低要求是VS2010. So,那些依然用VC6或者VS2008的就别犹

CUDA系列学习(二)CUDA memory &amp; variables

本文来介绍CUDA的memory和变量存放,分为以下章节: (一).CPU Memory 结构 (二).GPU Memory结构 (三).CUDA Context (四).kernel设计 (五).变量 & Memory 5.1 global arrays 5.2 global variables 5.3 Constant variables 5.4 Register 5.5 Local Array 5.6 Shared Memory 5.7 Texture Memory 5.8 总结 (一).

Thermal zone monitoring in an electronic device

FIELD One embodiment of the invention relates to a closed loop thermal control process in a portable electronic device having several embedded temperature sensors. Other embodiments are also described. BACKGROUND Most electronic products in use today

ubuntu配置机器学习环境(二) cuda 和cudnn 安装

Nvidia CUDA Toolkit的安装(cuda) PS:特别推荐*.deb的方法,目前已提供离线版的deb文件,该方法比较简单,不需要切换到tty模式,因此不再提供原来的*.run安装方法,这里以CUDA 7.5为例. 一.CUDA Repository 1.1 安装所需依赖包 sudo apt-get install build-essential # basic requirement # sudo apt-get install libprotobuf-dev libleveldb