4

PTX の学習を開始したいのですが、どこから始めればよいですか? これを行うための良い本/リソースはありますか?

これが役立つ場合は、x86/x64 ASM (多かれ少なかれ) を既に知っています。

4

1 に答える 1

14

他のアセンブリ言語に精通していると役立ちます。

決定的なリファレンスはPTX ガイドです。命令セットのリファレンス マニュアルとして機能しますが、かなり読みやすく、最初の 7 章ほどは並列スレッド実行の比較的基本的な紹介から始まり、すべての概念を説明しています。

短いドキュメントにも興味があるかもしれません:

/usr/local/cuda/doc/pdf/Inline_PTX_Assembly.pdf

(標準の Linux インストールの場合。Windows では、「Inline_PTX_Assembly.pdf」を検索するだけです。PTX ISA 3.2 ドキュメントもそこにあります)

このドキュメントでは、PTX について十分に説明しているため、そうしたくない場合は、完全なカーネルを構築することなく小さなスニペットを試すことができます。

また、ptx コードの生成、ほとんどの最適化 (生成されたptxを理解しにくくする可能性があります) の除去、カーネル ソース コードの行と生成されたptx、さらに理解を助けるために。-ptx-G-src-in-ptx

最後に、PTX は実際にはマシンが実行するものではありませんが、それに近いことに注意してください。PTX は中間コードであり、追加のコンパイル手順を経て、実際のマシン コードである SASS コードを作成します。cuobjdumpユーティリティ ( )を使用して SASS コードを調べることもできますが、cuobjdump -sass mycodeSASS には PTX と同じレベルのドキュメントがありません。そのため、PTX を理解することから始める必要があります。

于 2013-07-09T13:45:25.480 に答える