1. 程式人生 > >用Visual Studio 2017執行Julia集樣例(CUDA by example)

用Visual Studio 2017執行Julia集樣例(CUDA by example)

說說遇到的一些問題:
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同級目錄

Julia

11章multidevice.cu中需要做如下修改才能通過編譯:
原:

   CUTThread   thread =
start_thread(routine, &(data[0]) );

改為:

   CUTThread   thread = start_thread((CUT_THREADROUTINE)routine, &(data[0]) );