用Visual Studio 2017執行Julia集樣例(CUDA by example)
阿新 • • 發佈:2019-01-31
說說遇到的一些問題:
1)VS 直接開啟資料夾是不能除錯執行的,需要先建立一個專案,再將已有程式碼拷貝至專案所在資料夾下。具體操作見:如何使用vs將現有的專案或者資料夾(尤其是多層目錄的)新增到專案中
2)VS專案中一些檔案的功能:sln、sdf、vcxproj、vcxproj.filter各是什麼檔案、.sln檔案是做什麼的
3)一開我把cuda_by_example資料夾整個匯入之後,包含了很多.cu檔案進來,除錯報錯,因為只能有一個main函式,我原以為VS只會執行我指定的那個檔案,實際上VS應該是執行整個專案的。
4)julia_gpu.cn原始碼需作兩處修改:
a. 增加兩個標頭檔案:
#include "cuda_runtime.h"
#include "device_launch_parameters.h"
b. 將cuComplex 結構體的建構函式由
cuComplex( float a, float b ) : r(a), i(b) {}
改為
__device__ cuComplex( float a, float b ) : r(a), i(b) {}
5)最後執行的時候報錯:找不到glut64.dll,解決:將dll拷貝到生成的exe同級目錄
11章multidevice.cu中需要做如下修改才能通過編譯:
原:
CUTThread thread = start_thread(routine, &(data[0]) );
改為:
CUTThread thread = start_thread((CUT_THREADROUTINE)routine, &(data[0]) );