Coelacanth's Dream

Yellow Carp は VanGogh に続く RDNA 2 APU に

AMD の GPUドライバー開発者である Marek Olšák 氏により、オープンソースドライバー RadeonSI (OpenGL)、RADV (Vulkan) に向けた、Beige Goby GPUYellow Carp APU をサポートする最初のパッチが投稿された。

Beige Goby は先日 Linux Kernel (amd-gfx) へのパッチと同時に登場した新たな RDNA 2 GPU のコードネーム。
新たな RDNA 2 GPU、“Beige Goby” をサポートするパッチが投稿される | Coelacanth’s Dream Yellow Carp は 2020/12 に投稿された SMUv13 (System Management Unit) に関するパッチの中で突然登場した APU のコードネームであり、Yellow Carp をサポートするための巨大なパッチ群はまだ投稿されていない。
新たな AMD APU、“Yellow Carp” ―― SMU は v13 に | Coelacanth’s Dream

今回は最初のパッチということもあり、各種ヘッダファイルに Beige Goby を判定するためのマクロや既存のコードにパターンを追加する初期的な対応であり、Beige Goby に限っては新しい話はない。
しかし Yellow Carp となると話は変わり、AMD のオープンソースドライバーから約半年振りに名前が出されたかと思えば、VanGogh APU に続く RDNA 2 APU であることがパッチの内容から明かされた。
前述のパッチでは、Yellow Carp は APU であることが分かるくらいで、GPUコア部の世代については伏せられていた。

    case CHIP_SIENNA_CICHLID:
    case CHIP_NAVY_FLOUNDER:
    case CHIP_DIMGREY_CAVEFISH:
    case CHIP_BEIGE_GOBY:
    case CHIP_VANGOGH:
    case CHIP_YELLOW_CARP:
       return "gfx1030";

Yellow Carp APU の GPUファミリーと主に判別に使われる eRevisionId が、 VanGogh 同様に最初から 0x01, 0xFF と範囲が埋められているが、 Raven APU (gfx902) に対する Raven2 APU (gfx909)Renioir APU (gfx90c) のように、APU の GPU部が細かく派生する予定は今の所ないのだろうか。

 define AMDGPU_BEIGE_GOBY_RANGE         0x46, 0x50
	
 #define AMDGPU_VANGOGH_RANGE    0x01, 0xFF
	
 #define AMDGPU_YELLOW_CARP_RANGE 0x01, 0xFF

また、Dimgrey Cavefish/Navi23VanGogh に存在する、DCC (Delta Color Compression) 機能に関するハードウェアのバグが Yellow Carp にも存在するとのことで、これは開発時期を知るヒントになるかもしれない。 Beige Goby がそこに含まれないのは少し不思議に思うが、少し遅れて開発されたのだろうか?

    /* Whether chips are affected by the image load/sample/gather hw bug when
     * DCC is enabled (ie. WRITE_COMPRESS_ENABLE should be 0).
     */
    info->has_image_load_dcc_bug = info->family == CHIP_DIMGREY_CAVEFISH ||
                                   info->family == CHIP_VANGOGH ||
                                   info->family == CHIP_YELLOW_CARP;

Yellow Carp APU について AMD の開発者より明かされた情報はまだ少なく、VanGogh APU に続く RDNA 2 APU となり、SMU は VanGogh の SMUv11.5 よりメジャーバージョンが進んだ SMUv13 を搭載する、くらいだ。組み合わされる CPU や各種IPもまだはっきりしない。
だが、VanGogh も自分の記事を見返したら最初のパッチが投稿されたのは 2020/09 で、未だ正式発表はされていない。明かされていない情報は数多くあるだろう。
そういうことで Yellow Carp APU についても、変わらず気長に待つことにする。
それに UMD (User Mode Driver) にパッチが投稿開始されたことから、Linux Kernel (amd-gfx) へのパッチ群も公開される日が近いかもしれない。