Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
matlab関数を最適化する方法があるかどうか知りたいですgather。非常に巨大な行列を使用してCudaコードを開発していgatherますが、GPUデータを取得するために使用する必要のある関数が非常に遅いことに気付きました。2 ^ 13x2 ^ 8の行列の場合、約3秒かかります。
gather
のパフォーマンスはgpuArray.gather、PCIバスによって制限されます。これを最適化するには、収集するデータを少なくします(たとえば、インデックスを使用します)。Parallel Computing Toolboxの最近のバージョンでは、操作の多くは非同期ですが、gatherそうではないことに注意してください。そのため、非同期要求が完了するまでの時間が表示されているだけかもしれません。wait(gpuDevice)を使用してデバイスを同期することを確認できます。
gpuArray.gather
wait(gpuDevice)