Changes between Version 6 and Version 7 of GPUApp
- Timestamp:
- Jul 2, 2010, 4:32:44 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
GPUApp
v6 v7 10 10 cuda_kernel.cu; cuda.cu; cuda_config.h 11 11 }}} 12 The example_app_nvcuda.vcproj can be found at "boin/win_build/". Note that NVIDIA Cuda SDK 3.0 and older support device emulation mode. If your machine doesn't have a Cuda-enabled GPU, then you should build the sample app in the device emulation mode. Do so by setting "Build -> Configuration Manger -> Configuration" to either EmuDebug or EmuRelease. It comes to our attention that while compiling the sample app, the linker tries to link both the debug and release libraries, and thus causing the following errors:12 The example_app_nvcuda.vcproj can be found at "boin/win_build/". Note that NVIDIA Cuda SDK 3.0 or older supports device emulation mode. If your machine doesn't have a Cuda-enabled GPU, then you should build the sample app in the device emulation mode. Do so by setting "Build -> Configuration Manger -> Configuration" to either Emudebug|Emurelease. It comes to our attention that while compiling the sample app, the linker tries to link both the debug and release libraries, and thus causing the following errors: 13 13 {{{ 14 14 LIBCMTD.lib(dbgheap.obj) : error LNK2005: __heap_alloc already defined in LIBCMT.lib(malloc.obj) … … 17 17 ... 18 18 }}} 19 One solution to this problem is to set the Hyprid Cuda/C++ Runtime Library point to "Multi-Threaded Debug (/Mtd)". Do so by right click on the project. Set "Properties -> Configuration Properties -> Cuda Build Rule v3.0.14 -> Hybrid CUDA/C++ Options -> Runtime Library" to "Multi-Threaded Debug (/Mtd)". 19 One solution to this problem is to set the Hyprid Cuda/C++ Runtime Library point to "Multi-Threaded Debug (/MTd)". Do so by right click on the project. Set "Properties -> Configuration Properties -> Cuda Build Rule v3.0.14 -> Hybrid CUDA/C++ Options -> Runtime Library" to "Multi-Threaded Debug (/MTd)". 20 21 The executable file can be found at "boinc/win_build/Build/Win32/build_mode/" (build_mode could be release, debug, emurelease or emudebug). 22 23 * '''NVIDIA OpenCL''' (BOINC-NVOpenCL sample app for Windows can be found at "/boin/samples/nvopencl/") 24 {{{ 25 nvopencl.hpp; nvopencl.cpp; nvopencl_kernels.cl 26 }}} 27 The example_app_nvopencl.vcproj can be found at "boin/win_build/". OpenCL doesn't have emulation mode, but it could run on CPU alone by specifying CL_DEVICE_TYPE_CPU or CL_DEVICE_TYPE_ALL when creating an OpenCL context. 28 29 The Runtime Library needs to be reset to point to "Multi-threaded Debug (/MTd)" to avoid linking issues. Do so by right click on the project. Set "Properties -> Configuration Properties -> C/C++ -> Code Generation -> Runtime Library" to "Multi-threaded Debug (/MTd)". 30 31 * '''ATI Stream OpenCL''' (BOINC-ATIOpenCL sample app for Windows can be found at "/boin/samples/atiopencl/") 32 {{{ 33 atiopencl.hpp; atiopencl.cpp; atiopencl_kernels.cl 34 }}} 35 The example_app_atiopencl.vcproj can be found at "boin/win_build/". It is identical to NVIDIA OpenCL. Prior to build the app, make sure you have already reset the Runtime Library to point to "Multi-threaded Debug (/MTd)". 20 36 21 37 == Linux == #linux … … 122 138 /usr/lib/gcc/i686-apple-darwin9/4.0.1/include/mmintrin.h(68): error: identifier "__builtin_ia32_vec_init_v2si" is undefined 123 139 /usr/lib/gcc/i686-apple-darwin9/4.0.1/include/mmintrin.h(111): error: identifier "__builtin_ia32_vec_ext_v2si" is undefined 124 /usr/lib/gcc/i686-apple-darwin9/4.0.1/include/mmintrin.h(150): error: identifier "__builtin_ia32_packsswb" is undefined125 /usr/lib/gcc/i686-apple-darwin9/4.0.1/include/mmintrin.h(165): error: identifier "__builtin_ia32_packssdw" is undefined126 ...127 140 ... 128 141 }}}