2016-09-02 6 views
0

Pascal Architectureは、ユニファイドメモリの動作をアップグレードすることでCUDA開発者にとって驚くべき機能をもたらし、GPUメモリをシステム上で利用できるものよりも大きく割り当てることができます。CUDA 8とPascalアーキテクチャでのGPUメモリ割り当て

これがどのように実装されているのか不思議です。私は巨大なバッファー "cudaMallocManaging"によってそれをテストしました。そして、nvidia-smiは何も表示していません(バッファーサイズが利用可能なGDDRの下にない限り)。

+1

デマンドページング? – njuffa

答えて

2

これは、フードの中でどのように実装されているのか不思議です。私は "cudaMallocManaging"によって巨大なバッファをテストし、nvidia-smiは何も表示していません(バッファサイズが利用可能なGDDRの下になければ)。

まず、すべてのCUDA API呼び出しでproper CUDA error checkingを実行することをお勧めします。あなたの説明からあなたはそうではないように見えます。

  • CUDA 8

    1. パスカル(又は将来)のGPU

      :ユニファイドメモリ(UM)のみで動作するGPUの物理DRAMメモリを越えてメモリサイズの増大を可能に

      はデマンドページング(または将来の)ツールキット

    これ以外の設定はおそらく動作するはずです。 CUDA 8(CUDA 8RCではなく)とPascal GPUでうまく動作しない場合は、UMの要件(OSなど)を満たしていることを確認し、適切なエラーチェックも行ってください。 nvidia-smiから起こっていることを推測しようとするのではなく、割り当てられたメモリに対して実際のテストを実行します。

    機能のより一般的な説明については、this blog articleを参照してください。

  • 関連する問題