西川和久の不定期コラム
Core UltraにせっかくNPUが付いてるのでLLMや画像生成を動かしてみた!ミニPC「UH125 Pro」で
2024年7月19日 06:18
MINISFORUMは、Copilotボタン付きのCore Ultra 5 125H搭載ミニPC「UH125 Pro」を販売中だ。編集部から実機が届いたので試用レポートをお届けしたい。また以前Core UltraでAI系を確認した時はうまくNPUを使えなかったので、今回追加検証も行なってみた。
Copilotボタン付きのCore Ultra 5 125H搭載ミニPC
5月に同じプロセッサを搭載した「GMKtec NucBox K9」をご紹介し、Stable DiffusionもGPUでの動作になるが動かしてみた。
今回のUH125 Proは、同じプロセッサであるため(後半のベンチマークテストで検証するが)おそらくパフォーマンス的にはSSDの差程度になるかと思われる。
それ以外で大きな違いは、5Gigabit Ethernet×2、USB4×2、OCuLink×1、SDカードリーダそしてCopilotボタンの搭載。つまりUH125 Proは特にインターフェイス周りに結構気合いが入っているのが分かる。
加えてベアボーンも用意され、手持ちのパーツでコストを抑えたい自作派には嬉しい配慮となる。主な仕様は以下の通り。
MINISFORUM「UH125 Pro」の仕様 | |
---|---|
プロセッサ | Core Ultra 5 125H(低消費2E+4E+8P/14コア18スレッド、最大クロック4.5GHz/キャッシュ 18MB、ベースパワー 28W/最大ターボパワー 115W、NPU 1.4GHz) |
メモリ | 0/32GB(DDR5-5600×2/SO-DIMM最大各48GBまで) |
ストレージ | M.2 2280 PCIe 4.0 SSD 0/1TB、M.2 2230 PCIe 4.0スロット1つ空き |
OS | Windows 11 Home(23H2) |
グラフィックス | Intel Arc Graphics/DisplayPort 2.0、HDMI 2.1、Type-C(USB4) |
ネットワーク | 5Gigabit Ethernet×2、Wi-Fi 6E、Bluetooth 5.3 |
インターフェイス | USB 4×2、USB 3.1×2、USB 3.0、USB 2.0、3.5mmジャック、OCuLink×1、SDカードリーダー、Copilotボタン |
サイズ/重量 | 145×145×54mm、803g(実測) |
価格 | 7万5,980円(ベアボーン)、10万7,980円(32GB+1TB) |
プロセッサはCore Ultra 5 125H。低消費電力 Eコア×2+Eコア×4+Pコア×8の合計14コアで18スレッドとなる。最大クロックは4.5GHz、キャッシュ18MB。ベースパワー28W/最大ターボパワー115W。そして1.4GHzで動作するNPUを内蔵する。
サポートするAIソフトウェア/フレームワークは、OpenVINO、WindowsML、ONNX RT。ただし、Copilot+ PCの要件は40 TOPS以上となっており、このSKUは未対応だ(Intel自体から該当するCPUは未だ出ていない)。
ストレージはM.2 2280 PCIe 4.0 SSD 1TBと、M.2 2230 PCIe 4.0スロットが1つ空き。ちなみに以前ご紹介した、MINISFORUM「UM780 XTX」は、M.2 2280×2だったもののOCuLinkを使う時は片方にアダプタを接続するため、実質1基しかSSDは内蔵できなかった。しかし本機はOCuLinkは別にあり、このM.2 2230にはSSDを1基増設することが可能。細かいことだが、結構嬉しい対応だったりする。
メモリはDDR5-5600 SO-DIMM×2。16GB×2の計32GB搭載。最大48GB×2の96GBまで。OSはWindows 11 Home。23H2だったのでこの範囲でWindows Updateを適応し評価した。少し疑問なのが、他社も含めミニPCはクラスに関係無くHomeだったりProだったり。この基準は何なのだろう? できればProにしてほしかった。
グラフィックスはプロセッサ内蔵Intel Arc Graphics。外部出力用に、DisplayPort 2.0、HDMI 2.1、USB4を備えている。
ネットワークは5Gigabit Ethernet×2、Wi-Fi 6E、Bluetooth 5.3。この連載で2.5Gigabit Ethernetではなく5Gigabit Ethernetは初めてかと思う。そのほかのインターフェイスは、USB 4×2、USB 3.1×2、USB 3.0、USB 2.0、3.5mmジャック、OCuLink×1、SDカードリーダ、Copilotボタン。USB 4×2と、外部へGPUなどを接続可能なOCuLinkがあるのはポイントが高い。ちなみにCopilotボタンは、これを押すとCopilotが開くものだ。
サイズは145×145×54mm。重量は実測で803g。執筆時セール中で、ベアボーンで7万5,980円。32GB+1TBで10万7,980円。手持ちのパーツがあれば前者、無ければ後者となるが、構成を考えるとコストパフォーマンスはいいのではないだろうか。
筐体は同社いつも通りと言った感じのブラックベースのミニPCだ。ただし、iPhone 13 Proとの比較写真からも分かるように、最近ご紹介した中では一番大きい。重量は実測で803g。ACアダプタが286gなので合わせると珍しく1kgを超える。
前面に3.5mmジャック、USB4、USB 3.1×2。背面はOCuLink、USB4、5Gigabit Ethernet×2、DisplayPort、HDMI、USB 3.0、USB 2.0、電源入力。右側面は扉の写真から分かるように、SDカードリーダを配置。裏は4隅にゴム足と中央辺りにVESAマウンタ用のネジ穴がある。そしてトップカバーにCopilotボタンと電源ボタン。
特にCopilotボタンは設置場所が手が届く範囲に限定され、VESAマウントでモニターの裏に設置すると実質使えない。ここにCopilotボタンが必要なのか? は個人的には疑問だ(笑)。
付属品は、ACアダプタ(サイズ約80×80×30mm、重量286g、出力19V/6.32A)、HDMIケーブル、VESAマウンタ、ネジなど。
BIOS起動は[DEL]キー。ただし、いったんメニューが出て、SetupでBIOSに入れる。内部へのアクセスは、裏パネル4隅のゴム足を外すとその下にネジ。また周囲が爪で引っかかっているので、根気強く外す。ここまでは想定通り。この時、USB 3.1×2が本体とケーブルでつながっているので要注意!
無事裏パネルが外れると、写真からも分かるように、CPUファンなどに覆われ、そのままではM.2スロットやメモリにアクセスできない。本体のヒートシンク側に6本、SSDのヒートシンク側に6本ネジがあり、計12本外すとやっと目当てのM.2 SSDとメモリが現れる。少し面倒だが(ベアボーンもある)、この程度は仕方ないところか。
写真左手前が装着済みのM.2 2280 SSD、右側がM.2 2230空きスロット。その上にSD-DIMM×2がある。M.2 2230でも2TB容量のものがあるため、増設という意味では問題ないだろう。
ノイズや発熱は試用した範囲では特に気にならなかった。写真からも分かるように、あれだけしっかり対策しているのが功を奏している感じだ。
Core Ultra 5 125Hで十分なパフォーマンス!
初期起動時、特にインストールされたアプリなどはなく、Windows 11 Home標準のまま。最新鋭のCore Ultra/32GB/SSDなだけに、何をしてもサクサク動作しストレスは全く感じない。
M.2 2280 1TB SSDは「KINGSTON OM8PGP41024Q-A0」。以前同社のOCuLink対応「MINISFORUM UM780 XTX」をご紹介したが、同じSSDを搭載している。C:ドライブのみの1パーティションで約952GBが割り当てられ空き900GB。BitLockerで暗号化されている。
5Gigabit EthernetはRealtek 5Gigabit Ethernet、Wi-FiはIntel Wi-Fi 6E AX210、BluetoothもIntel製となる。またデバイスマネージャーにはNeural processorsの項目があり、タスクマネージャーにもNPUが追加されている。
ベンチマークテストは、PCMark 10、3DMark、Cinebench R23、CrystalDiskMarkを使用した。冒頭に書いた同じプロセッサ搭載の「GMKtec NucBox K9」と比較して、多少凸凹はあるものの、概ね同じ。この辺りのスコアがCore Ultra 5 125Hの実力と思って間違いなさそうだ。
【表】ベンチマーク結果 | |
---|---|
PCMark 10 v2.2.2701 | |
PCMark 10 Score | 6,466 |
Essentials | 10,089 |
App Start-up Score | 13,645 |
Video Conferencing Score | 7,915 |
Web Browsing Score | 9,511 |
Productivity | 8,122 |
Spreadsheets Score | 10,290 |
Writing Score | 6,411 |
Digital Content Creation | 8,953 |
Photo Editing Score | 11,909 |
Rendering and Visualization Score | 8,476 |
Video Editting Score | 7,110 |
3DMark v2.29.8282 | |
Time Spy | 3,265 |
Fire Strike Ultra | 1,766 |
Fire Strike Extreme | 3,453 |
Fire Strike | 6,879 |
Sky Diver | 25,130 |
Cloud Gate | 31,537 |
Ice Storm Extreme | 140,801 |
Ice Storm | 165,638 |
Cinebench R23 | |
CPU | 14,706 |
CPU(Single Core) | 1,704 |
[Read]
SEQ 1MiB (Q= 8, T= 1): 4791.854 MB/s [ 4569.9 IOPS] < 1747.78 us>
SEQ 1MiB (Q= 1, T= 1): 2260.255 MB/s [ 2155.5 IOPS] < 463.73 us>
RND 4KiB (Q= 32, T= 1): 523.967 MB/s [ 127921.6 IOPS] < 242.21 us>
RND 4KiB (Q= 1, T= 1): 65.839 MB/s [ 16074.0 IOPS] < 62.07 us>
[Write]
SEQ 1MiB (Q= 8, T= 1): 3795.278 MB/s [ 3619.5 IOPS] < 2201.64 us>
SEQ 1MiB (Q= 1, T= 1): 3213.269 MB/s [ 3064.4 IOPS] < 326.06 us>
RND 4KiB (Q= 32, T= 1): 458.777 MB/s [ 112006.1 IOPS] < 285.52 us>
RND 4KiB (Q= 1, T= 1): 160.366 MB/s [ 39151.9 IOPS] < 25.45 us>
NPUを明示的に使うにはどうすればいいのか?
「GMKtec NucBox K9」の時、AUTOMATIC1111を動かしてみたが、結局NPUでは動作せず、OpenVINOにおいてはGPUでの動作となってしまった。その後、いろいろ調べたのだが、当時より少し環境が整っていることが分かった。
まず手始めにNPUドライバをアップデートする。ここが古いままだと動かないケースが多いようだ。これで準備OK。
まずLLMから試してみよう。ここにコードがあるので、たとえばtest.pyで適当なフォルダへ保存する。環境は(要Miniconda)、
conda create -n llm python=3.10.6
conda activate llm
pip install torch
pip install intel_npu_acceleration_library
これだけ。あとはpython test.pyで起動する。
初めはModelをダウンロードするので時間がかかるものの、「TinyLlama/TinyLlama-1.1B-Chat-v1.0」は小型なのでさほどかからない。動き出すと「What is the meaning of life?」を自問自答するループがずっと動いている(笑)。この時、メモリは0.6GB、NPU使用率は40%ちょっと。まだ余裕がある。とはいえ、CPUが100%に張り付いている(笑)。
Core Ultra 5 125H搭載のNPUはCopilot+ PCの40TOPS未満の性能。従って未だ見ぬCopilot+ PC対応のIntelプロセッサが出てきた時は面白そうだ。
pip install intel_npu_acceleration_libraryからも分かるように、これはIntelプロセッサのNPU限定のプログラム。AMDや既にCopilot+ PCで販売しているArm系Snapdragon X Plus/Eliteでは動かない。この辺り、各社の動きも含めしばらく追う必要があるだろう。
前回同様、AUTOMATIC1111のOpenVINO対応版を動かしたところ、「Accelerate with OpenVINO」を選択。「Select a device」でGPU.0(GPU)とGPU.1(NPU)が出てきたので、行けるか? と思ったものの、コンパイル中に落ちてしましった。
ほかに何かあるのか、と調べるとGIMPの「OpenVINO AI Plugins for GIMP」でNPUを使えるということなので試してみた。手順はここの通りだが、少し面倒なので、ここの記述が分かる人限定と思った方が無難かもしれない。
インストールが完了してGIMPが起動したら、「Layer」→「OpenVINO-AI-Plugins」→「Stable diffusion」でパネルが開く。「Advanced Settings」をチェックすると、一番上のModel Nameに加え、見慣れたPrompt、Negative Prompt、生成する数、Steps数、CFG、Seedなどが出てくる。一番下のPower Modeは固有の機能で、Power mode / Best Performance / Best Power Efficiencyの3択。項目に応じて、何をCPU/GPU/NPUに振り分けるかとなる。
今回は「Best Power Efficiency」したところ、Text: NPU、unet: NPU、Vae: GPU.0に振り分けられた。加えてStep数が少なくできるLCMモデルだと8 Stepsで512x512の画像生成が約5秒と、それなりに速い。この状態ではNPU使用率はほぼ100%、メモリは2GB少しを使用。これなら結構実用的に楽しめそうだ。
ただGIMPだと使いにくいというユーザーも少なくないだろう。できればAUTOMATIC1111やComfyUIなど、生成AI画像アプリとして一般的なものに対応してほしいところだ。
今回はLLMと画像生成をNPUで動かすことに成功したが、まだ対応環境は出始めたばかり。これからに期待したい。どちらもこの速度で動くなら、筆者のようなマニアック用途(笑)はともかくとして、普通の人ならプロセッサ内蔵NPUだけで済む日が、そう遠く無い時期に来るかもしれない。
以上のようにMINISFORUM「UH125 Pro」は、Core Ultra 5 125H/32GB/1TBを搭載したミニPCだ。加えて5Gigabit Ethernet×2、USB4×2、そしてOCuLinkにも対応し、拡張性という意味でなかなか魅力的。ベアボーンも用意されコストを抑えられるのもポイントが高い。NPUに関してはこれからに期待だが、その入り口を本機で試すことは可能だ。
特に気になる部分もなく、Core Ultra 5 125H搭載で、「後からいろいろしてみたいかも!? 」……っと思っているユーザーにお勧めの1台と言えよう。