Coelacanth's Dream

LLVM に gfx1200, gfx1201 の GPUID が追加される

AMD の Jay Foad 氏により、LLVM に新たな AMD GPU の GPUID GFX1200, GFX1201 のサポートを追加するパッチが投稿され、すでに main ブランチにマージされている。
LLVM へのパッチは今まで https://reviews.llvm.org/ に投稿されていたが、現在は Github レポジトリへのプルリクエストを送る方式に移行している。

今回のパッチは GFX12, gfx1200, gfx1201 のターゲットネームや定義を追加するのが主であり、それらがサポートする新機能などは含まれていない。
現状、GFX12 の ISA は GFX11/RDNA 3 と同じとされ、VOPD 命令 (Dual issue wave32) をサポートする点も同じである。

    +     ``gfx1200``                 ``amdgcn``   dGPU  - cumode          - Architected                   *TBA*
    +                                                    - wavefrontsize64   flat
    +                                                                        scratch                       .. TODO::
    +                                                                      - Packed
    +                                                                        work-item                       Add product
    +                                                                        IDs                             names.
    +
    +     ``gfx1201``                 ``amdgcn``   dGPU  - cumode          - Architected                   *TBA*
    +                                                    - wavefrontsize64   flat
    +                                                                        scratch                       .. TODO::
    +                                                                      - Packed
    +                                                                        work-item                       Add product
    +                                                                        IDs                             names.
    +

それとこのパッチについて取り上げているニュースサイトの多くが LLVM を Linux と同じものとして扱っていたが、自分にはその意味がわからなかった。
AMD GPU のコンパイラバックエンドに使われる LLVM と、ディスプレイエンジン等のハードウェア自体をサポートし、User Mode Driver へのインターフェイスを提供する Linux Kernel における AMDGPU Kernel Mode Driver では役割が違うと思うのだが。