多くの変数とメソッドを含む cuda デバイスで大きなクラスを複製しようとしています。クラス定義を .cuh ファイルに入れ、オブジェクトを作成してデバイス コードで使用できるようになりました。
問題は、既存のオブジェクトをホストからデバイスに取得する方法はありますか? 私はまだコードのシリアル バージョンを使用して、ジオメトリ データと物理データを読み込んでいます。中間配列などを使用せずにデバイスにコピーできる場合、デバイスは sizeof を使用せずにそのサイズをどのように処理しますか?
割り当てにこのようなものを使用しますか?
MyClass *MyObject;
int size = sizeog(MyClass);
cudaMalloc((void**)&MyObject_device, size);
cudaMemCpy(Myobject_device, MyObject, size, cudaMemcpyHostToDevice);
アドバイスをいただければ幸いです。