Guoming MingTot...'s profilemingTottiPhotosBlogListsMore ![]() | Help |
mingTotti留<一支烟的时间><让爱><打回原形> |
||||||||||||||||||||||||||||
|
June 21 CUDA…记录一下最近在CUDA编程上遇到的错误,觉得有必要写一写,这里也不是一点技术含量也没有的... CUDA上获取错误信息是通过函数cudaGetErrorString()实现的,具体怎么用自己去查手册吧...下面说的是返回错误的信息以及应该如何处理。我在这方面才刚开始,处理方法都是基于实际程序,未必是通用的。 1. time out 这是因为在windows下,显卡线程运行超过5秒就会被windows终止。这对于大计算量的kernel来说基本上是个致命的错误。可以尝试把kernel分解,或者使用linux不带x-windows的模式。我就因此装了个fedora… 2. unspecified launch failure 据说主要是尝试访问没有分配的空间而产生的。这要很小心地看看代码,到底哪里越界了。 3. setting the device when a process is active is not allowed 原因是cutilDeviceInit()初始化显卡之后,没有调用cudaThreadExit()释放资源,导致第二次调用cutilDeviceInit()时出错。这个是CUDA从2.0升级到2.1后出现的,2.0时对再次调用cutilDeviceInit()对原有的资源不作任何处理,但2.1的时候就显式提示错误了。 4. invalid argument 据说是CUDA的对于__global__函数的参数传递使用的是shared memory,大小只有256bytes,传递参数的大小超过了这个限制。后来不知道为什么再也没报过这个错,也就没管了。 ========================================== 5. unknown error (补充 6.28) 看名字就觉得无语...据说是调用cudaMalloc或者cudaFree次数太多。有时还会促发segment fault...据说可以一次性分配显存解决问题,而且需要在最开始/结束的地方调用cudaMalloc/cudaFree。这个解决方法还没试过... 出现问题还是要多看看NVIDIA的论坛,上面也许会有解决的办法。 June 18 曼联亚洲行 我有兴趣去看这个...有人同去不??
2009曼联亚洲行—杭州站 (曼联VS绿城)
场馆:杭州黄龙体育馆
2009-07-26 20:00
我计划是26日从上海或者周庄之类的到杭州,然后28日从上海或者杭州回广州... March 23 H3MMarch 15 勇气 |
|||||||||||||||||||||||||||
|
|