Macos 在Mac OS X 10.7.4上使用OpenCL禁用Nvidia看门狗
我有一个OpenCL程序,它可以很好地处理小问题,但是当运行较大的问题时,超过了在Nvidia硬件上运行内核的8-10秒时间限制。虽然我在Nvidia GTX580上计算的GPU上没有连接监视器,但内核在运行大约8-10秒后将始终终止 我对这个问题做的初步研究表明,如果监视器连接到图形卡,英伟达看门狗应该只执行时限。然而,我没有任何监视器连接到OpenCl运行的GPU,但这个限制仍然是强制的Macos 在Mac OS X 10.7.4上使用OpenCL禁用Nvidia看门狗,macos,opencl,xcode4.3,nvidia,Macos,Opencl,Xcode4.3,Nvidia,我有一个OpenCL程序,它可以很好地处理小问题,但是当运行较大的问题时,超过了在Nvidia硬件上运行内核的8-10秒时间限制。虽然我在Nvidia GTX580上计算的GPU上没有连接监视器,但内核在运行大约8-10秒后将始终终止 我对这个问题做的初步研究表明,如果监视器连接到图形卡,英伟达看门狗应该只执行时限。然而,我没有任何监视器连接到OpenCl运行的GPU,但这个限制仍然是强制的 是否可以禁用英伟达看门狗或让驱动程序识别在Mac OS X7.7.4?中没有监视器连接到GTX580上?
是否可以禁用英伟达看门狗或让驱动程序识别在Mac OS X7.7.4?
中没有监视器连接到GTX580上? 我知道解决这个问题的一个可能的方法是将其分解成更小的内核,但是由于我工作的性质,当我使用更细粒度时,我仍然可以达到这个极限 我正在编译/运行的系统如下所示: MacPro4,1 2 x 2.26 GHz四核Intel Xeon Mac OS X 10.7.4 代码4.3.3 连接Nvidia GT120 2监视器 NVidia GTX580未附带任何内容 <>对于运行英伟达设备查询时的额外信息,我得到以下输出:CUDA Device Query (Runtime API) version (CUDART static linking)
Found 2 CUDA Capable device(s)
Device 0: "GeForce GTX 580"
CUDA Driver Version / Runtime Version 4.2 / 4.2
CUDA Capability Major/Minor version number: 2.0
Total amount of global memory: 1536 MBytes (1610285056 bytes)
(16) Multiprocessors x ( 32) CUDA Cores/MP: 512 CUDA Cores
GPU Clock rate: 1564 MHz (1.56 GHz)
Memory Clock rate: 2004 Mhz
Memory Bus Width: 384-bit
L2 Cache Size: 786432 bytes
Max Texture Dimension Size (x,y,z) 1D=(65536), 2D=(65536,65535), 3D=(2048,2048,2048)
Max Layered Texture Size (dim) x layers 1D=(16384) x 2048, 2D=(16384,16384) x 2048
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 49152 bytes
Total number of registers available per block: 32768
Warp size: 32
Maximum number of threads per multiprocessor: 1536
Maximum number of threads per block: 1024
Maximum sizes of each dimension of a block: 1024 x 1024 x 64
Maximum sizes of each dimension of a grid: 65535 x 65535 x 65535
Maximum memory pitch: 2147483647 bytes
Texture alignment: 512 bytes
Concurrent copy and execution: Yes with 1 copy engine(s)
Run time limit on kernels: Yes
Integrated GPU sharing Host Memory: No
Support host page-locked memory mapping: Yes
Concurrent kernel execution: Yes
Alignment requirement for Surfaces: Yes
Device has ECC support enabled: No
Device is using TCC driver mode: No
Device supports Unified Addressing (UVA): Yes
Device PCI Bus ID / PCI location ID: 6 / 0
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
Device 1: "GeForce GT 120"
CUDA Driver Version / Runtime Version 4.2 / 4.2
CUDA Capability Major/Minor version number: 1.1
Total amount of global memory: 512 MBytes (536543232 bytes)
( 4) Multiprocessors x ( 8) CUDA Cores/MP: 32 CUDA Cores
GPU Clock rate: 1400 MHz (1.40 GHz)
Memory Clock rate: 800 Mhz
Memory Bus Width: 128-bit
Max Texture Dimension Size (x,y,z) 1D=(8192), 2D=(65536,32768), 3D=(2048,2048,2048)
Max Layered Texture Size (dim) x layers 1D=(8192) x 512, 2D=(8192,8192) x 512
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 16384 bytes
Total number of registers available per block: 8192
Warp size: 32
Maximum number of threads per multiprocessor: 768
Maximum number of threads per block: 512
Maximum sizes of each dimension of a block: 512 x 512 x 64
Maximum sizes of each dimension of a grid: 65535 x 65535 x 1
Maximum memory pitch: 2147483647 bytes
Texture alignment: 256 bytes
Concurrent copy and execution: Yes with 1 copy engine(s)
Run time limit on kernels: Yes
Integrated GPU sharing Host Memory: No
Support host page-locked memory mapping: Yes
Concurrent kernel execution: No
Alignment requirement for Surfaces: Yes
Device has ECC support enabled: No
Device is using TCC driver mode: No
Device supports Unified Addressing (UVA): No
Device PCI Bus ID / PCI location ID: 5 / 0
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 4.2, CUDA Runtime Version = 4.2, NumDevs = 2, Device = GeForce GTX 580, Device = GeForce GT 120
[deviceQuery] test results...
PASSED
> exiting in 3 seconds: 3...2...1...done!
您是否检查了Console.app中的消息?当你的内核被终止时,有什么东西贴在那里吗?@console.app中的Kentzo我得到NVDACompute:channelexception!异常类型=0x8=FiFo:看门狗超时错误听起来像个bug。你试过在苹果开发者论坛上问这个问题吗?@kentzo:这不是一个bug,这是预期的行为。所有显示驱动程序都包含一个看门狗,用于阻止恶意着色器或计算作业暂停gpu并锁定gui。Linux和Windows完全相同。我知道没有关于显示GPU的解决方法。我想这已经得到了回答。请参见此处:您是否检查了Console.app中的消息?当你的内核被终止时,有什么东西贴在那里吗?@console.app中的Kentzo我得到NVDACompute:channelexception!异常类型=0x8=FiFo:看门狗超时错误听起来像个bug。你试过在苹果开发者论坛上问这个问题吗?@kentzo:这不是一个bug,这是预期的行为。所有显示驱动程序都包含一个看门狗,用于阻止恶意着色器或计算作业暂停gpu并锁定gui。Linux和Windows完全相同。我知道没有关于显示GPU的解决方法。我想这已经得到了回答。请看这里: