0
我一直在CUDA中遇到問題。我寫了一個遞歸內核(最新允許)。 .cu文件是包含多個對象的大型項目的一部分。 一個內核的參數是一塊物體(Piece.cpp)是這樣的:CUDA&Copy-constructor
parallelKernel (Piece* piece, vector upcomingPieces)
當我需要遞歸調用,我建立了下一小塊指數,所以我寫了這樣的事情:
Piece *nextPiece = upcomingPieces[nextPieceIndex];
parallelKernel (nextPiece, upcomingPieces);
,但我得到在編譯時錯誤:
error: cannot pass an argument with a user-provided copy-constructor to a device-side kernel launch
現在,我一直在試圖寫一個拷貝構造函數,但我似乎無法得到它的權利。任何人都可以提供更多關於此?
問題是,雖然用戶提供的複製ctr存在,並且可能不應該存在它的工作。 –