Ubuntu Weekly Recipe

第528回AMD Ryzen GでパワフルPCを構築する[GPUのベンチマーク編]

AMD Ryzen Gをサポートするプロプライエタリなドライバーがリリースされました。そこで、第510回に引き続きRyzen 5 2400G内蔵GPU(APU)のベンチマークを計測します。

もはやパワフルではない

今回は第510回の続きで、このときは中途半端にしかできなかったGPUのベンチマークを行います。とはいえ、すでに柴田さんが第523回第524回でさらにパワフルなPCを取り上げているため、もはやタイトルに偽りありという状態になっています。しかしタイトルはわかりやすさ第一ということで、510回のものを踏襲しました。

使用したPC

使用したPCは第510回と同じですが、少しだけスペックに変更があります。

種類 メーカー 型番
APU AMD Ryzen 5 2400G
マザーボード ASRock AB350 Gaming-ITX/ac
メモリ Crucial CT2K16G4DFD824A
SSD ADATA ASX7000NP-256GT-C
ケース Cooler Master Elite 130 Cube
電源 玄人志向 KRPW-PT500W/92+

今回はSSDをWDS512G1X0CからASX7000NP-256GT-Cに変更しました。というのも、WDS512G1X0Cはどうにも相性問題が解決できず、安定して使用できていません。マザーボードのUEFI BIOSのアップデートあるいはWDS512G1X0Cのファームウェアのアップデートで解決する問題とは思いますが、いつ安定して使用できるのかはわかりません。このSSDは検証用に購入したものなので、本運用では容量不足で、何か新しいものを買わなくてはいけないのかなと頭を抱えつつ若干楽しみでもあったりして、このあたりは自作PCならではのドキドキ感です。

使用したOSはもちろんUbuntu 18.04 LTSです。

ベンチマークの結果を眺めていても傾向がわかりにくかったため、急遽SAPPHIRE PULSE Radeon RX 550 2GD5も追加することにしました。

使用したドライバー

第524回でも紹介したように、AMDのGPUには大きくオープンソースとプロプライエタリなドライバーが存在します。今回はその両方を試します。ここではオープンソースのドライバー(最初からインストールされているドライバー)をMesaと称します。またグラフィックのベンチマークだけではなく、OpenCLのベンチマークも行います。

プロプライエタリなドライバーは第524回で紹介されたRadeon Software for Linux 18.20を使用します。インストールマニュアルを読むと「amdgpu All Open Graphics Stack」「amdgpu Pro Graphics Stack」に分かれています。すなわち一部の機能を使わなければドライバーもオープンソースという選択ができそうです。

使用したベンチマーク

ベンチマークソフトも第524回で紹介したPhoronix Test Suiteを使います。ただしUbuntuのリポジトリにあるものではなく、別途ダウンロードした最新版です。実際に実行したベンチマークは以下のとおりです。

$ phoronix-test-suite list-installed-tests


Phoronix Test Suite v8.0.1
6 Tests Installed

pts/glmark2-1.1.0          - GLmark2                       
pts/gputest-1.3.2          - GpuTest                       
pts/juliagpu-1.3.1         - JuliaGPU                      
pts/supertuxkart-1.5.2     - SuperTuxKart                  
pts/unigine-heaven-1.6.4   - Unigine Heaven                
pts/unigine-valley-1.1.6   - Unigine Valley                

ただしいくつか注意点があって、pts/juliagpuをインストールする前に次のコマンドを実行する必要があります。

$ sudo ln -s /usr/lib/x86_64-linux-gnu/libOpenCL.so.1 /usr/lib/libOpenCL.so

具体的なインストール手順は省略します。

ドライバーのインストール

Mesa編

Ubuntuにあらかじめインストールされている3DグラフィックスライブラリのMesaはOpenCLにも対応していますが、デフォルトでは必要なパッケージがインストールされていません。というわけでインストールします。次のコマンドを実行してください。

$ sudo apt install mesa-opencl-icd clinfo

インストール後、clinfoコマンドを実行します。

$ clinfo
Number of platforms                               1
  Platform Name                                   Clover
  Platform Vendor                                 Mesa
  Platform Version                                OpenCL 1.1 Mesa 18.0.5
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd
  Platform Extensions function suffix             MESA

(中略)

ICD loader properties
  ICD loader Name                                 OpenCL ICD Loader
  ICD loader Vendor                               OCL Icd free software
  ICD loader Version                              2.2.11
  ICD loader Profile                              OpenCL 2.1

このように、OpenCLが実行できるようになっていることがわかります。

AMDGPU-PRO編

AMDGPU-PROのインストール方法はドキュメントに記載されています。

「amdgpu All Open Graphics Stack」の場合は、展開したフォルダー内で次のコマンドを実行し、再起動します。

$ ./amdgpu-install -y

また、⁠amdgpu Pro Graphics Stack」の場合は、同じく展開したフォルダー内でを実行し、再起動します。

$ ./amdgpu-pro-install -y --opencl=pal

ベンチマークの実行

ベンチマークの実行は次のコマンドから行いました。

$ phoronix-test-suite run pts/glmark2-1.1.0 pts/gputest-1.3.2 pts/juliagpu-1.3.1 pts/supertuxkart-1.5.2 pts/unigine-heaven-1.6.4 pts/unigine-valley-1.1.6

実行オプションをいろいろと聞かれますので、適宜答えてください。

今回ベンチマークは4回行いました。

まず最初はインストールした状態で実行しました。ベンチマークでは「AMD Ryzen 5 2400G Mesa」としてあります。⁠設定」「詳細⁠⁠-⁠About」は次のとおりです。

図1 インストールした状態のAbout
画像

2番目は「amdgpu All Open Graphics Stack」の状態で、ベンチマークでは「AMD Ryzen 5 2400G AMDGPU OPEN」としてあります。

図2 ⁠amdgpu All Open Graphics Stack」の状態のAbout
画像

見てのとおり、図1と同じです。

3番目は「amdgpu Pro Graphics Stack」の状態で、ベンチマークでは「AMD Ryzen 5 2400G AMDGPU-PRO」としてあります。

図3 ⁠amdgpu Pro Graphics Stack」の状態のAbout
画像

4番目はRadeon RX 550での「amdgpu Pro Graphics Stack」の状態で、ベンチマークでは「AMD Ryzen 5 Sapphire AMD Radeon RX 550」としてあります。

図4 Radeon RX 550でのAbout
画像

ベンチマークの結果

ではベンチマークの結果を見ていきましょう。

SuperTuxKart

SuperTuxKartは第510回と同じ条件で計測しました。オープンソースのドライバーのほうが速いという興味深い傾向が見て取れます。第510回の数値とAMDGPU OPENの数値がほぼ同じなので、Mesaのバージョンが新しければ新しいほど速い傾向があるようです。

図5 SuperTuxKartの結果
画像

Unigine Benchmarks

Unigine Benchmarksは第524回で実行されたベンチマークです。これも必ずしもプロプライエタリなドライバーのほうが速くないこともあり、なかなかに興味深いです。いずれも第524回の半分程度の数値であり、Radeon RX Vega Mが速すぎるのか、Mesaのバージョンの違いによるものなのかは興味があります(おそらく前者と思われます⁠⁠。

図6 Unigine Benchmarksの結果
画像

GLmark2

GLmark2も第524回で実行されたベンチマークです。やはりプロプライエタリなドライバーのほうが遅くなっています。そしてRadeon RX Vega Mの圧倒的な速さに舌を巻きます。

図7 GLmark2の結果
画像

GpuTest

GpuTestも第524回で実行されたベンチマークです。ベンチマークの項目が多いので、特徴もさまざまです。大きくはオープンソースのほうが速いもの、プロプライエタリのほうが速いもの、オープンソースではそもそも実行不可能なものに分かれます。

図8 GpuTestの結果その1
画像
図9 GpuTestの結果その2
画像
図10 GpuTestの結果その3
画像

JuliaGPU

JuliaGPUはOpenCLのテストを行っています。せっかくセットアップしましたが、オープンソースのOpenCLドライバーでは動作しませんでした。意外なことにRadeon RX 550よりも内蔵GPUのほうが速い結果になっています。

図11 JuliaGPUの結果
画像

総評

ベンチマークの結果からいえることは、Ryzen 5 2400Gの内蔵GPU(APU)は優秀であり、また多くのケースにおいて別途プロプライエタリなドライバーをインストールしなくても充分な速度が出ます。しかしOpenCLを使用したい場合、あるいはオープンソースのドライバーでは動作しない場合はプロプライエタリなドライバーをインストールするといいということです。

あとはRadeon RX Vega Mは価格に見合った性能があるということでしょうか。

アンインストールの注意点

「amdgpu All Open Graphics Stack」「amdgpu Pro Graphics Stack」もアンインストール方法がインストールドキュメントに記載されています。しかし実際には、その方法だけだとGDMが起動しない事態に遭遇しました。そのような場合は次のコマンドを実行すると修正できたので、同じような事態になった人は試してみてください。

$ sudo apt install --reinstall libgl1-mesa-dri mesa-va-drivers

おすすめ記事

記事・ニュース一覧