7

我有两台笔记本电脑:索尼 vaio z 系列 (vocz1) 和 S 系列。第一个是 Geforce 和 cuda 型号 GT330M,第二个是 GT 640M LE。当我尝试从该站点http://developer.nvidia.com/cuda/cuda-downloads安装 CUDA Geforce 驱动程序时, 我在 Windows 中收到以下错误。我想知道你会建议我解决这个问题的解决方案吗?我所有的显卡都已经安装好了,

Nvidia 安装程序无法继续 此显卡找不到兼容的显卡硬件。

我是 CUDA 编程的初学者,我想知道我可以在不安装 Nividia 驱动程序的情况下编译和运行我的 CUDA 程序吗?Cuda 工具包和 SDK 已成功安装在我的机器上,但是当我运行我的程序时,我无法设置我的 Cuda 设备。这是否意味着我需要安装 Nividia 驱动程序?在此处输入图像描述

cudaError_t cudaStatus1;
int deviceCount; 
cudaGetDeviceCount(&deviceCount); 
int device; 
for (device = 0; device < 10; ++device) { 
    cudaDeviceProp deviceProp; 

    cudaGetDeviceProperties(&deviceProp, device); 
    // Choose which GPU to run on, change this on a multi-GPU system.
    cudaStatus1 = cudaSetDevice(device);
    printf("Device %d has compute capability %d.%d. -  %d\n", 
            device, deviceProp.major, deviceProp.minor,cudaStatus1 ); 
}

输出:

Device 0 has compute capability 3137268.3137268. -  35
Device 1 has compute capability 3137268.3137268. -  35
Device 2 has compute capability 3137268.3137268. -  35
Device 3 has compute capability 3137268.3137268. -  35
Device 4 has compute capability 3137268.3137268. -  35
Device 5 has compute capability 3137268.3137268. -  35
Device 6 has compute capability 3137268.3137268. -  35
Device 7 has compute capability 3137268.3137268. -  35
Device 8 has compute capability 3137268.3137268. -  35
Device 9 has compute capability 3137268.3137268. -  35

35 表示未设置设备,如果变为 0 则表示已设置设备。

在我收到以下信息运行 deviceQuery 后:

Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。版权所有。
C:\Users\xx>"C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK 4.2\C\ bin\win64\Release\deviceQuery.exe" [deviceQuery.exe] 开始... C:\ProgramData\NVIDIA Corporation \NVIDIA GPU Computing SDK 4.2\C\bin\win64\Relea se\deviceQuery.exe 正在启动... CUDA 设备查询(运行时 API)版本(CUDART 静态链接)找到 1 个支持 CUDA 的设备设备 0:“GeForce GT 640M LE" CUDA 驱动程序版本/运行时版本 4.2 / 4.2 CUDA 功能主要/次要版本号:3.0 全局内存总量:
1024 MBytes(1073741824 字节)(2)多处理器 x (192) CUDA Cores/MP:384 CUDA Cores GPU时钟频率:
405 MHz (0.41 GHz) 内存时钟频率:
900 Mhz 内存总线宽度:128 位二级缓存大小:262144 字节最大纹理尺寸大小 (x,y,z) 1D=(65536), 2D=(65536,65536), 3 D=(4096,4096,4096) Max Layered Texture Size (dim) x layers
1D=(16384) x 2048, 2D=(16384,16 384) x 2048 常量内存总量:65536字节 共享内存总量每个块:49152 字节每个块可用的寄存器总数:65536 Warp 大小:32
每个多处理器的最大线程数:2048 每个块的最大线程数:1024 块每个维度的最大大小:1024 x 1024 x 64 网格每个维度的最大大小:2147483647 x 65535 x 65535 最大内存间距:
2147483647 字节纹理对齐:512 字节并发复制和执行:是,使用 1 个复制引擎 内核运行时间限制:是
集成 GPU 共享主机内存:否支持主机页面锁定内存映射:是并发内核执行:
是 表面对齐要求:是 设备已启用 ECC 支持:否 设备正在使用 TCC 驱动程序模式:否 设备支持统一寻址 (UVA):
否 设备 PCI 总线 ID/PCI 位置 ID:1 / 0 计算模式:< 默认(多个主机线程可以将 ::cudaSetDevice() 与设备同时使用) > deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 4.2, CUDA Runtime Versi on = 4.2, NumDevs = 1, Device = GeForce GT 640M LE [deviceQuery.exe]测试结果...通过

3 秒后退出:3...2...1...完成!

4

3 回答 3

1

我想知道我可以在不安装 Nividia 驱动程序的情况下编译和运行我的 CUDA 程序吗?Cuda 工具包和 SDK 已成功安装在我的机器上,但是当我运行我的程序时,我无法设置我的 Cuda 设备。这是否意味着我需要安装 Nividia 驱动程序?

您肯定需要驱动程序来运行该程序。您是否尝试过运行随二进制文件提供的 deviceQuery.exe。这应该为您提供一个很好的起点,以了解出现了什么问题。

于 2012-08-11T09:32:37.413 回答
1

不幸的是,有许多 NVIDIA GPU 不会安装来自 NVIDIA 网站的驱动程序(特别是对于专门为 Sony、Lenovo 等 OEM 并且 OEM 想要控制驱动程序体验的 GPU 版本)。这很可能是你的情况。

在这些情况下,您可以编辑 .inf 文件以将您的 GPU 添加到将安装驱动程序的 GPU 列表中。但是,这有点棘手,通常需要编辑 INF 文件的 3 个不同部分。您可以搜索有关如何修改 NVIDIA inf 文件的详细信息;有许多网站可以做到这一点。

当然,你必须有合适的 CUDA 驱动程序才能运行 CUDA 的东西。所以首先要做的事情......你必须安装驱动程序。

于 2012-08-11T23:35:18.217 回答
1

我也有一个 VAIO,我也遇到了同样的问题。不要下载笔记本版,试试台式机版的Nvidia驱动。我还必须禁用我的另一张显卡(英特尔)。它对我有用。

于 2012-08-11T16:03:37.357 回答