2013-09-01 49 views
0

我在主cpp文件中使用模板化的CUDA(Thrust庫)函數,所以我需要使用CUDA NVCC進行編譯。使用CUDA編譯main.cpp文件

我很擔心NVCC如何處理我的主機代碼。 主機代碼優化如何發生? NVCC是否將主機代碼傳遞給MSVC編譯器並僅處理與CUDA相關的代碼?

回答

1

是的,nvcc是一個分離主機和設備代碼的編譯器驅動程序。主機代碼直接傳遞給主機編譯器(在微軟窗口的情況下爲cl.exe),主機代碼的優化由主機編譯器處理。

該nvcc documentation涵蓋此編譯流程,也指示如何將標誌傳遞給主機編譯器。