linux下编译显示 launch timed out

zjz314159 2010-05-04 11:22:32
linux下编译一个大的数据包计算成功出结果,而换一个小一点的数据包则显示 launch timed out:
Cuda error: Kernel execution failed in file '***.cu' in line 1035 : the launch timed out and was terminated
...全文
258 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
cuda2010 2010-05-11
  • 打赏
  • 举报
回复
Linux下有时即使程序完全没问题也会出现屏幕闪烁的问题,有的时候是驱动的bug。那些错误提示就是CUDA_SAFE_CALL产生的,去掉之后自然就不出现了,但错误依在。至于运行几次以后结果发生变化,可能原因之一是cudaMalloc()后没有初始化。
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 zjz314159 的回复:]
兄台,我又碰到一个新的问题:
我之前的程序在C1060下可以运行结果,而且我运行3次都成功出结果,而且是合理的结果,但是运行第4次就卡住了,光标一直停留在程序中间的一个地方,强制退出后就再也无法运行原来成功运行的程序。而这种情况下重启电脑,又可以运行之前成功运行的程序,运行几次后又不行。重复这样,不知道是什么原因。
[/Quote]

有程序内存泄露...执行完后没释放资源.而且多半是在host程序中.好好检查一下你的host程序吧.
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 zjz314159 的回复:]
回去查代码,发现我把CUDA_SAFE_CALL去掉之后就可以成功编译运行了,不管数据包有多大。请问CUDA_SAFE_CALL是何方神圣?做什么用?需要什么库函数吗?
[/Quote]

一个cutil库中的宏.检查cuda的api调用是否成功.如失败则终止程序.
可以运行不等于结果正确!呵呵.
zjz314159 2010-05-11
  • 打赏
  • 举报
回复
兄台,我又碰到一个新的问题:
我之前的程序在C1060下可以运行结果,而且我运行3次都成功出结果,而且是合理的结果,但是运行第4次就卡住了,光标一直停留在程序中间的一个地方,强制退出后就再也无法运行原来成功运行的程序。而这种情况下重启电脑,又可以运行之前成功运行的程序,运行几次后又不行。重复这样,不知道是什么原因。
zjz314159 2010-05-11
  • 打赏
  • 举报
回复
回去查代码,发现我把CUDA_SAFE_CALL去掉之后就可以成功编译运行了,不管数据包有多大。请问CUDA_SAFE_CALL是何方神圣?做什么用?需要什么库函数吗?
  • 打赏
  • 举报
回复
基本上有越界写,破坏了显示用显存区内容了.
zjz314159 2010-05-09
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 l7331014 的回复:]

引用 6 楼 zjz314159 的回复:
在ubuntu9.04环境运行cuda程序出现了问题:
计算73KB的小数据库时提示:
Cuda error in file 'sw.cu' in line 323 : unspecified launch failure.
计算229M的较大数据库时提示:
Cuda error in file 'sw.cu' in line 323 :……
[/Quote]
[Quote=引用 8 楼 l7331014 的回复:]

应该是程序本身的问题,可是一直查不出来,并且用小数据包运行的时候,屏幕会闪一下,出现小雪花麻点,不知道这是什么原因。
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zjz314159 的回复:]
在ubuntu9.04环境运行cuda程序出现了问题:
计算73KB的小数据库时提示:
Cuda error in file 'sw.cu' in line 323 : unspecified launch failure.

计算229M的较大数据库时提示:
Cuda error in file 'sw.cu' in line 323 : the launch timed out an……
[/Quote]

程序中应该有bug.不光是超时的问题了.呵呵.
73KB时kernel就根本没能启动!
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zjz314159 的回复:]
……
[/Quote]

根据问题来的.没有统一的方法.呵呵.
zjz314159 2010-05-07
  • 打赏
  • 举报
回复
在ubuntu9.04环境运行cuda程序出现了问题:
计算73KB的小数据库时提示:
Cuda error in file 'sw.cu' in line 323 : unspecified launch failure.

计算229M的较大数据库时提示:
Cuda error in file 'sw.cu' in line 323 : the launch timed out and was terminated.
其中,
321:kernal<<<……,……>>>(…………);
322:CUT_CHECK_ERROR("Kernel execution failed");
323:CUDA_SAFE_CALL(cudaMemcpy(A, B, (numSeq[0] * sizeof(unsigned short int)), cudaMemcpyDeviceToHost));

既然linux里没有对kernal的执行时间有限制,为什么还是会出现timeout的问题?
zjz314159 2010-05-07
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 l7331014 的回复:]

引用 3 楼 zjz314159 的回复:
kernel执行超时了有解决方案吗?可否更改系统设定的kernel执行时间。我的是ubuntu9.04系统


好像不启动图像系统的话,没有限制问题.否则,就有此问题.
不过,一般解决这种问题的方法是把kernel拆成多个kernel.(有循环的话可以把最外层的循环搬到host上)
使每个kernel执行时间少于限制。
[/Quote]

请问是否有拆分的例子代码?我是新手来的,很多不会,谢谢拉,在论坛看到最多的就是你的帖子
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zjz314159 的回复:]
kernel执行超时了有解决方案吗?可否更改系统设定的kernel执行时间。我的是ubuntu9.04系统
[/Quote]

好像不启动图像系统的话,没有限制问题.否则,就有此问题.
不过,一般解决这种问题的方法是把kernel拆成多个kernel.(有循环的话可以把最外层的循环搬到host上)
使每个kernel执行时间少于限制。
zjz314159 2010-05-06
  • 打赏
  • 举报
回复
kernel执行超时了有解决方案吗?可否更改系统设定的kernel执行时间。我的是ubuntu9.04系统
zjz314159 2010-05-06
  • 打赏
  • 举报
回复
我的是Linux系统,假如我的程序必须要这么长的执行时间,有什么办法可以让它执行下去么?
  • 打赏
  • 举报
回复
1)编译不出以上信息,而是执行时错误.
2)kernel执行超时了.kernel执行时间一般和数据规模有关,但也不是绝对的,有时候,数据规模小但执行时间长也完全可能.

231

社区成员

发帖
与我相关
我的任务
社区描述
CUDA on Windows XP
社区管理员
  • CUDA on Windows XP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧