AMDは、2020年にLinuxカーネルをRyzen 5000シリーズプロセッサで実行できるようにパッチを提供しました。 Ryzen 5000シリーズプロセッサはx64 ISAを実装していませんか? Ryzen 5000プロセッサは、IntelプロセッサやRyzen 3000シリーズプロセッサとどう違いますか?同じISAを実装するすべてのプロセッサで正しく実行するには、オペレーティングシステムが知る必要があるプラットフォーム固有の動作は何ですか? Ryzen 5000プロセッサをサポートするために、AMDはLinuxカーネルをどのように変更しましたか?
ベストアンサー1
Ryzenはx86-64 ISAを実装していますが、Linuxなどのカーネルに重要ないくつかの変更を導入しています。
Ryzen 5000は、新しい「シリーズ」識別子19hを使用するRyzen Gen 3の一部です(前世代のRyzenはシリーズ17hでした)。多くのパッチには、カーネルシリーズ19hが17hのように動作するように指示するだけであっても、それに対するサポートの追加が含まれます。
- シリーズ19h PCI ID
- Zenスタイルの初期化
- IBS修正を受ける
- EDACサポート
- _PSDテーブルのサポート(不要になった機能を無効にすることも含まれます)
- RAPLサポート
- 追加のRAPLサポート
- エネルギーレポート
多くのパッチにはカーネルの一部ではなくホストされたコードが含まれており、ほとんどがパフォーマンスイベントを囲んでいます。
これまでRyzen Gen 3にはプラットフォーム固有の動作はあまりありません。init_amd_zn
のZen初期化機能の主な作業は、サブチャネル緩和にのみ使用される機能フラグを設定することです。
より一般的には、CPUサポートは、新しい「コア」CPU機能(新しい識別子処理、新しい電源管理機能のサポート、エラー検出および修正機能など)ではなく、プラットフォームのサポートに重点を置く傾向があります。一部のプラットフォームでは、より複雑なサポートが必要です。例えば新しい統合GPUを搭載したCPUまたは新しいコアパーティションを搭載したCPUでは、コア自体にさらにアーキテクチャ変更が必要です(例えば小型コアと大型コアの両方をサポートします。