4

夏の間、GPU プログラミングの方法を学びたいと思っています。私はすべての言語/ライブラリを受け入れていますが、PyCuda に最も興味があります。

私は強いプログラマーではありません。必要なほとんどのプログラムを Java で作成し、C の基本を理解できますが、後者で複雑なことをしようとすると、segfault または malloc エラーがほぼ確実に発生します。

したがって、「ダミー用」のチュートリアル/ガイド/ドキュメントが本当に必要です。理想的には、ガイドは GPU プログラミングの基本からかなり複雑な科学的/数値的プログラミングに至るまで機能し、事前の知識を当然のこととは思わない明快さと深さで各詳細を説明します。

4

1 に答える 1

3

PyCUDAから始めても、CUDAがどのように機能し、GPUをプログラムする方法を理解する必要がなくなるわけではありません。現実的には、おそらく次のすべてをこの順序で行う必要があります。

  1. 少なくとも構文を理解し、ポインタとメモリの概念を完全に理解するのに十分なCを学びます。CUDAでは常に不均一なアドレス空間で作業しているため、後者は非常に重要です。ポインタが移植性がなく、間違ったメモリ空間でのポインタの間接参照が機能しない理由を理解できない場合は、ドラゴンがたくさんいます。
  2. 例としてCUDAのようなものを試して、CUDAプログラミングの背後にある基本的なアイデアとAPIの仕組みを理解してください。
  3. 「Pythonfordummies」と「numpyfordummies」のチュートリアルを実行して、Pythonの終わりに慣れる必要があります。

そうすれば、PyCUDAは完全に自明になります。動作するCUDAコードの記述方法をすでに知っていて、Pythonとnumpyで多くの作業を行っているという背景から、PyCUDAを消化するのに約1時間かかりました。

于 2011-05-20T06:29:04.770 に答える