ソースを眺めるだけだと結構デカくて大変なのでステップ実行しながら中を覗いてみたくなったのですが、デカいプロジェクトを自分でビルドするのもそれはそれで面倒なので、配布されているビルド済みのDLLで試してみた。公式でデバッグ版も用意されているの、親切で素晴らしいですね。
- PyTorchのサイトからデバッグ版のバイナリをダウンロードする
- ソースはついてこないので、ダウンロードしたバイナリと同じバージョンのソースをGitHubリポジトリからcloneする
- 上でダウンロードしたファイルにbuild-hashというファイルがあり、gitのコミットハッシュが書かれているのでそれをcheckoutする
- LibTorchを使ったコードを書いてデバッグ版のlibをリンクする
- デバッガで実行して、ステップイン
Visual Studioの場合、初回にLibTorchの関数にステップインしようとするとソースの場所を聞かれるので、git cloneしておいたディレクトリを指定すると中に入れる。
とりあえずMNISTで試してみましたがちゃんとステップインで中に入って、処理途中の値なども参照できていい感じでした。