电子商务网站建设的总体目标,微信网页网站怎么做,如何建立新的企业网站,网站制作旅行社目前#xff0c;NVIDIA和AMD的Windows driver均有支援OpenCL#xff08;NVIDIA的正式版driver是从195.62版开始#xff0c;而AMD则是从9.11版开始#xff09;。NVIDIA的正式版driver中包含OpenCL.dll#xff0c;因此可以直接使用。AMD到目前为止#xff0c;则仍需要安装其…目前NVIDIA和AMD的Windows driver均有支援OpenCLNVIDIA的正式版driver是从195.62版开始而AMD则是从9.11版开始。NVIDIA的正式版driver中包含OpenCL.dll因此可以直接使用。AMD到目前为止则仍需要安装其SDK才有OpenCL.dll档。不过在最新的SDK中NVIDIA和AMD使用的calling convention是相同的。也就是说使用AMD的SDK编译的OpenCL程式可以直接在NVIDIA的driver下运作。反过来也是一样。AMD的OpenCL SDK是在AMD Stream SDK 2.0里面目前是beta 4。NVIDIA的OpenCL SDK则包括在最新的CUDA 3.0 SDK beta中。两个SDK可以同时安装在同一 部电脑中基本上不会有冲突的问题。 由于OpenCL SDK的重点只是在header file和程式库因此设定上是很单纯的。在AMD的SDK中会建立一个环境变数 ATISTREAMSDKROOT。Header files就在include 目录中而程式库档案则在lib里面。NVIDIA的SDK也是类似有一个环境变数 NVSDKCOMPUTE_ROOT。不过因为NVIDIA的SDK同时包括CUDA及OpenCL因此它 的header files是 在OpenCL\common\inc目录里而程式库则是在OpenCL\common\lib里面。 关于程式库的部份还有一点特别需要注意的是AMD和NVIDIA都有提供32 bits及64 bits的程式库供32 bits及64 bits的程式使用。NVIDIA的SDK中32 bits的程式 库是在lib目录下的Win32目录里而64 bits的则是在x64目录里。AMD的SDK中则分别是在x86及x86_64目录里。 以下是使用Visual Studio 2008 Express 设定的范例 NVIDIA 的CUDA SDK 特别注意的是因为NVIDIA的SDK在区分32 bits及64 bits版本程式库所使用的目录名称Win32及x64和Visual Studio 2008内建的$(PlatformName)是一致的 因此可以直接使用。AMD的SDK就要分别设定了。另外如果使用的是32 bits的SDK则不包括64 bits的library因此路律就不需要再加上$(PlatformName)。 以下是AMD SDK 的设定方式 最后把OpenCL.lib 加到程式库里面就可以了这点对两个SDK 都是一样的 最后再顺便提到一个小地方。在MacOS X 10.6 中OpenCL 的header 档是存在OpenCL 目录中也就是 #include OpenCL/opencl.h 但是在Windows 下以及可能所有其它的OS 下都是 #include CL/cl.h 因此如果想要让同一个程式码可以同时在各种OS 下都能编译的话在include 档案时建议写成 #ifdef __APPLE__ #include OpenCL/opencl.h #else #include CL/cl.h #endif 这样就可以同时在MacOS X 10.6 下以及其它的OS 下都能使用了。