分页: 1 / 2

Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库)

发表于 : 2012-01-03 15:41
yq-ysy
【2013.03.03更新】
现在有“包括Cuda全内核”版的Blender 2.65下载了,windows版本。
Blender 2.65.10 - Fastest build: All CUDA kernels + OSL
http://graphicall.org/444

Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库)

我的电脑安装有 XP和Ubuntu双系统,两个系统中都有“绿色免安装解压缩即可用”的Blender 2.61,
近日尝试使用Cycles来渲染3D画面,用CPU则没事,一切正常;
调用GPU来渲染,在3D viewi视图中按F12黑屏,以Rendered预览也为黑屏。

在Windows XP(32位)运行的 Blender ,选择启用GPU时出现如下提示:
Error: CUDA device supported only with shader model 1.3 or up, found 1.1
在Ubuntu Linux 11.10(64位)运行的 Blender ,选择启用GPU时出现如下提示:
Error | CUDA nvcc compiler not found. Install CUDA toolkit in default location.

网上google搜索了一阵,发现外国友人已经找到解决方法,一试果然简便有效,总结如下:
(1)首先确认自己的Nvidia显卡不是太老太旧的,我的显卡是两三年前买的Geforce 210,还行;
(2)其次确认自己的Nvidia显卡驱动不是太老太旧的,因为旧版的驱动没有CUDA,新版才有。
自己到Nvidia官方网站下载相应芯片组最新的显卡驱动吧: http://www.nvidia.com http://www.nvidia.cn
(3)关键:下载本教程提供的附件——cuda的lib库,x86(32位)或x64(64位),
cudalib-x86.7z
cuba lib x86
(225.91 KiB) 已下载 833 次
cudalib-x64.7z
cuba lib x64
(169.3 KiB) 已下载 366 次
解压缩后得到一个lib目录,里面有6个文件,分别是:
kernel_sm_10.cubin
kernel_sm_11.cubin
kernel_sm_12.cubin
kernel_sm_13.cubin
kernel_sm_20.cubin
kernel_sm_21.cubin
其中13、20、21这三个文件在Blender默认的2.61版已经有了,而且版本更新不用替换,
只需把2.61版里缺少的10、11、12这三个文件复制过去即可,复制到的相应目录是:
在Windows XP(32位): blender-2.61-release-windows32\2.61\scripts\addons\cycles\lib
Ubuntu Linux 11.10(64位): blender-2.61-linux-glibc27-x86_64/2.61/scripts/addons/cycles/lib
提示:这几个文件对2.62版的blender没有用(详见第10楼的跟帖)。
(4)OK啦!没事了!
这样不需要再按提示“安装 CUDA toolkit ”,也可以使用Nvidia显卡GPU的CUDA应用Cycles渲染了。

渲染步骤如下:
删除多余的物体:
(1)启动Blender ⇒ 默认已经有 Cube 立方体 ⇒ X 删除  ⇒ 点击确认;
(2)鼠标右键点击 Lamp 灯 ⇒ X 删除  ⇒ 点击确认;
添加猴脸和地板:
(3)游标在原点 ⇒ Shift A 添加 ⇒ Mesh 网格物体 ⇒ Plane 平面 ⇒ S 5 缩放5倍大;
(4)游标在原点 ⇒ Shift A 添加 ⇒ Mesh 网格物体 ⇒ Monkey 猴脸 ⇒ G Z 1 向上移动1个单位 ⇒ 点击左边工具栏Shading明暗法下的Smooth平滑(可以看到,猴脸变得光滑了);
修改渲染引擎和预览方式:
(5)点击上方默认是Blender Render的下拉菜单按钮,改选为Cycles Render(可以看到,整个场景变得白了一些);
(6)点击下方默认是Solid实体的下拉菜单按钮,改选为Rendered已渲染(可以看到,整个场景变得很暗);
添加一个平面光源:
(7)Shift A 添加 ⇒ Mesh 网格物体 ⇒ Plane 平面 ⇒ G Z 4 向上移动4个单位 ⇒ G X 3 水平向右移动3个单位 ⇒ R Y 45 沿着Y轴旋转45度;
(8)点击右边特性编辑器的Material材质(原子能)标签页 ⇒ 点击“+ New”按钮 ⇒ 注意:如果没有执行第(6)步,显示的情况会不一样;
(9)点击默认是Diffuse BSDF的下拉菜单按钮,改选为Emission(可以看到,平面光源亮了起来,照在猴脸上,单仍很暗);
(10)点击默认是白色的色彩条,选择一个你喜欢的颜色,我这里选择的是暗红色:R 0.800 G 0.500 B 0.500 A 1.00
(11)点击默认是1.000的灯光强度,修改为20(可以看到,猴脸被照亮了很多,3D视图的预览画面呈磨砂状逐渐清晰);
修改渲染设置:
(12)点击右边特性编辑器的Render渲染(照相机)标签页 ⇒ Render渲染栏目 ⇒ 点击Feature Set: 功能设置默认是Supported支持的下拉菜单,改选为Experimental实验性(可以看到,3D视图的预览画面又一次刷新,呈磨砂状逐渐清晰);
(13)点击下方Device设备默认是CPU中央处理器的下拉菜单,改选为GPU图形处理器(这时,下方多出了一行GPU Type类型,默认已经是CUDA)(3D视图的预览画面又一次刷新,速度比使用CPU快了一些);提示:2.62版的blender默认没有GPU或CPU的选项,需要按快捷键Ctrl Alt U,弹出用户自定义界面,然后在system标签页里左下角的“Compute Device”,默认是none,即用的是cpu,改选为CUDA(或OpenCL),这样就有CPU和GPU Compute选项了。
修改精细度设置:
(14)点击下方的Dimensions尺寸栏目 ⇒ Resolution分辨率的默认设置为 X :1920 Y :1080 50%(缩放),暂时不改变;
(15)点击展开下方的Integrator集成栏目 ⇒ 其中的Samples采样率的默认设置为 Render渲染 : 10 Preview预览 : 10,暂时不改变。
测试渲染:
(16)把鼠标放回3D viewi视图里 ⇒ F12 渲染静态图片(可以看到,渲染的过程中,左上角有进度提示,渲染结束后,左上角有所耗费的时间显示。)
(17)渲染完成后 ⇒ F3 保存图片 ⇒ F11 或者 Esc 可以退出目前所处的UV图像编辑器,回到3D View视图编辑器
渲染测试
渲染测试
下面是我的电脑的硬件配置、渲染条件设置、操作系统、渲染耗时统计:
家用电脑的硬件配置
CPU—— AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
主板——捷波悍马H1
内存——黑金刚 DDR II 667 2G
显卡——华硕 Geforce 210 显存 128 DDR III
硬盘——西数250G SATA II

渲染条件设置、操作系统 及 耗时统计
Resolution分辨率的默认设置为 X :1920 Y :1080 50%
Samples采样率的默认设置为 Render渲染 : 10 Preview预览 : 10
Ubuntu Linux 64位: —— CPU 耗时 08.89 秒 —— GPU 耗时 07.20 秒 —— 速度提升 19%
Windows XP 32位:—— CPU 耗时 14.36 秒 —— GPU 耗时 07.04 秒 —— 速度提升 51%

Resolution分辨率的默认设置为 X :1920 Y :1080 100%
Samples采样率的默认设置为 Render渲染 : 100 Preview预览 : 10
Ubuntu Linux 64位: —— CPU 耗时 6 分 46.67 秒 —— GPU 耗时 5 分 38.63 秒 —— 速度提升 16.7%
Windows XP 32位:—— CPU 耗时 9 分 04.36 秒 —— GPU 耗时 4 分 58.82 秒 —— 速度提升 45%

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-01-08 21:12
myewmyew
唉,我的N卡都快四年前的货了,不支持CUDA

怎么XP下面速度提升那么明显

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-01-13 16:16
yq-ysy
myewmyew 写了:唉,我的N卡都快四年前的货了,不支持CUDA
怎么XP下面速度提升那么明显
我的N卡也是3年前的货呀,有GPU,升级驱动程序就支持CUDA了。

XP速度提升明显,说明了3个问题:
(1)64位的CPU在64位的系统上运行64位的软件,确实效率提高很多;
(2)如果撇开64位的因素,我没有在32位Linux上测试,但也可看到XP系统占用CPU资源太多太厉害了,CPU能用在软件上的资源很少,所以XP仅用CPU渲染时,特别的慢;
(3)安装了支持GPU的CUDA算法的显卡驱动后,XP 32位反而比Linux 64位快了,这也许是因为我在Ubuntu Linux下使用的是默认的驱动,没有手工下载安装Nvidia官方最新版的Linux显卡驱动,也许是这个问题,默认的Linux显卡驱动不够好。

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-02-27 12:18
cenjianneng
无论是ubuntu 64位还是win7 64位,用gpu渲染都会出现“Error: CUDA device supported only with shader model 1.3 or up, found 1.1” :em20

都放了你提供的64位的lib :em20

cpu渲染就正常

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-02-27 17:48
yq-ysy
cenjianneng 写了:无论是ubuntu 64位还是win7 64位,用gpu渲染都会出现“Error: CUDA device supported only with shader model 1.3 or up, found 1.1”
都放了你提供的64位的lib
cpu渲染就正常
下载使用最新版的blender 2.62吧,不需要复制那些lib文件也可以正常使用Cycles渲染了。
而且,也没有了GPU或CPU的选项了,
而且选择Supported支持来渲染,或者选择Experimental实验性渲染,所需的时间都一样。
也许是新版2.62的Blender选择使用Cycles渲染时默认就使用GPU了。

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-02-27 17:49
yq-ysy
cenjianneng 写了:无论是ubuntu 64位还是win7 64位,用gpu渲染都会出现“Error: CUDA device supported only with shader model 1.3 or up, found 1.1”
都放了你提供的64位的lib cpu渲染就正常
有可能是三个问题引起:
一是显卡驱动没安装好;二是显卡本身不支持;三也许是64位的系统却下载错用了32位的Blender ?

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-02-27 23:04
HYMjpg
A心配N卡? :em20 难怪要出问题了 :em20 Blender 2.6支持A卡硬渲染 :em11

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-02-27 23:36
cenjianneng
yq-ysy 写了: 下载使用最新版的blender 2.62吧,不需要复制那些lib文件也可以正常使用Cycles渲染了。
而且,也没有了GPU或CPU的选项了,
而且选择Supported支持来渲染,或者选择Experimental实验性渲染,所需的时间都一样。
也许是新版2.62的Blender选择使用Cycles渲染时默认就使用GPU了。
yq-ysy 写了: 有可能是三个问题引起:
一是显卡驱动没安装好;二是显卡本身不支持;三也许是64位的系统却下载错用了32位的Blender ?
用2.61 64位版,加lib库后,选gpu或者cpu都是可以的。
用2.62 64位版,加lib库(不加都试过),2.62不是没有gpu/cpu选项,是按ctrl+alt+u,弹出用户界面,然后在system选项页那里的左下角有个“Compute Device”,默认是none,即用的是cpu,后面有CUDA和OpenCL选项的!!

选了了之后就有gpu/cpu选项了,反正我是gpu/cpu和Supported/Experimental都互相搭配过,用gpu是黑屏的。

显卡9800GT,驱动是285.62 for win7 x64,玩战地3的时候特意去更新驱动的

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-02-27 23:41
cenjianneng
ubuntu里就没试过2.61,用的是2.62 64版

我还特别去nvidia官网下载CUDA toolkit 4.1 for ubuntu11.04,加lib后,2.62还是不能用gpu

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-02-28 9:44
yq-ysy
cenjianneng 写了:用2.61 64位版,加lib库后,选gpu或者cpu都是可以的。
用2.62 64位版,加lib库(不加都试过),2.62不是没有gpu/cpu选项,是按ctrl+alt+u,弹出用户界面,然后在system选项页那里的左下角有个“Compute Device”,默认是none,即用的是cpu,后面有CUDA和OpenCL选项的!!
选了了之后就有gpu/cpu选项了,反正我是gpu/cpu和Supported/Experimental都互相搭配过,用gpu是黑屏的。
显卡9800GT,驱动是285.62 for win7 x64,玩战地3的时候特意去更新驱动的
原来如此,需要在那个地方改为CUDA或OpenCL才能选取GPU,谢谢提醒。
另外,我也发现,我的2.62版Blender也没法使用GPU渲染了,
没有复制lib文件之前,出现的错误提示是:Error: CUDA device supported only with shader model 1.3 or up, found 1.1
在复制lib文件之后,出现的错误提示是:CUDA error: Invalid value in cuMemcpyHtoD(mem, host, size)

上网google搜了一下,找到一篇国外的帖子,也问到为什么2.61版能用Cycles到了2.62版就不行:
http://blenderartists.org/forum/showthr ... OT-WORKING
这问题得到专家解答:结果太不幸了,你我都得换新显卡才行!
Blender官方的wiki说了: We support graphics cards starting from GTX 2xx (shader model 1.3), however it is recommended to use a GTX 4xx or GTX 5xx card (shader model 2.x),
http://wiki.blender.org/index.php/Doc:2 ... _Rendering
至少要GTX 2xx 以上的Nvidia显卡,才能支持CUDA 1.3版的显影模式;
推荐要GTX 4xx 或者 GTX 5xx以上的Nvidia显卡,才能支持CUDA 2.x版的显影模式;
比这些更早期的旧显卡,即使支持,也会比CPU渲染还慢。

很不幸,我的GeForce 210已经算太老了,在2.61版能用也许是因为2.61版的Blender刚刚加入Cycles,还在实验使用着CUDA 1.1版的显影模式,所以加入了kernel_sm_11.cubin这个文件后就能用了;到了2.62版就只用CUDA 1.3版及以上的CUDA 2.x版显影模式了,所以到了现在2.62版连我的显卡也没用了。——你的显卡9800GT比我更早,更不用说了……节哀……顺便去买新显卡吧!

另附:《Nvidia官网各型号显卡支持的CUDA 显影模式版本对照表》
http://developer.nvidia.com/cuda-gpus
只能先看这表,再看价格,掂量着口袋里的银子,再决定买什么型号的显卡。

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-02-29 19:41
cenjianneng
yq-ysy 写了:
cenjianneng 写了:用2.61 64位版,加lib库后,选gpu或者cpu都是可以的。
用2.62 64位版,加lib库(不加都试过),2.62不是没有gpu/cpu选项,是按ctrl+alt+u,弹出用户界面,然后在system选项页那里的左下角有个“Compute Device”,默认是none,即用的是cpu,后面有CUDA和OpenCL选项的!!
选了了之后就有gpu/cpu选项了,反正我是gpu/cpu和Supported/Experimental都互相搭配过,用gpu是黑屏的。
显卡9800GT,驱动是285.62 for win7 x64,玩战地3的时候特意去更新驱动的
原来如此,需要在那个地方改为CUDA或OpenCL才能选取GPU,谢谢提醒。
另外,我也发现,我的2.62版Blender也没法使用GPU渲染了,
没有复制lib文件之前,出现的错误提示是:Error: CUDA device supported only with shader model 1.3 or up, found 1.1
在复制lib文件之后,出现的错误提示是:CUDA error: Invalid value in cuMemcpyHtoD(mem, host, size)

上网google搜了一下,找到一篇国外的帖子,也问到为什么2.61版能用Cycles到了2.62版就不行:
http://blenderartists.org/forum/showthr ... OT-WORKING
这问题得到专家解答:结果太不幸了,你我都得换新显卡才行!
Blender官方的wiki说了: We support graphics cards starting from GTX 2xx (shader model 1.3), however it is recommended to use a GTX 4xx or GTX 5xx card (shader model 2.x),
http://wiki.blender.org/index.php/Doc:2 ... _Rendering
至少要GTX 2xx 以上的Nvidia显卡,才能支持CUDA 1.3版的显影模式;
推荐要GTX 4xx 或者 GTX 5xx以上的Nvidia显卡,才能支持CUDA 2.x版的显影模式;
比这些更早期的旧显卡,即使支持,也会比CPU渲染还慢。

很不幸,我的GeForce 210已经算太老了,在2.61版能用也许是因为2.61版的Blender刚刚加入Cycles,还在实验使用着CUDA 1.1版的显影模式,所以加入了kernel_sm_11.cubin这个文件后就能用了;到了2.62版就只用CUDA 1.3版及以上的CUDA 2.x版显影模式了,所以到了现在2.62版连我的显卡也没用了。——你的显卡9800GT比我更早,更不用说了……节哀……顺便去买新显卡吧!

另附:《Nvidia官网各型号显卡支持的CUDA 显影模式版本对照表》
http://developer.nvidia.com/cuda-gpus
只能先看这表,再看价格,掂量着口袋里的银子,再决定买什么型号的显卡。

不再对旧版cuda支持有点可惜了,再来就是2.62和2.61的Cycles效能相差大吗?
如果不大,没理由不再支持旧版cuda的

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-03-01 8:49
yq-ysy
cenjianneng 写了:不再对旧版cuda支持有点可惜了,再来就是2.62和2.61的Cycles效能相差大吗?
如果不大,没理由不再支持旧版cuda的
从“学习Cycles”的角度上来说,不支持1.1版的CUDA确实有点可惜,因为很多学生还买不起近千元的新显卡。
但是从“实际应用”的角度上来说,真的是留着1.1版一点用处都没有,因为现在要渲染动画,都是高清的,版本越先进速度就越快,如果每渲染一帧能加速10秒,渲染一部完整的90分钟动画电影13万5千帧,就是节省了135万秒!(375个小时,即15天!)虽然我也没钱买新网卡测试,但觉得,渲染一帧高清,2.0版的CUDA应该比1.1版快不止10秒。

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-05-12 16:34
quyitquyit
不知道是不是因为自己网速慢 ,楼主的附件始终没速度, 请楼主把x86的库文件发我邮箱好吗 [email protected] 谢谢

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-05-14 9:08
yq-ysy
quyitquyit 写了:不知道是不是因为自己网速慢 ,楼主的附件始终没速度, 请楼主把x86的库文件发我邮箱好吗 [email protected] 谢谢
已经发送到你的信箱。不过这些lib库在2.63a版上还是用不了,只能在2.61版渲染了。

Re: Blender 2.61使用Nvidia显卡GPU的CUDA应用Cycles问题解决及渲染测试比较(附件:链接库

发表于 : 2012-09-13 22:37
KOSKERS
yq-ysy, 你好。我是blender 2.6.3,nvidia gt240M,安装了 cuda toolkit 4.0
跑的时候发现
CUDA device supported only with compute capability 1.3 or up, found 1.2.
和解?