Ubuntu日和

【第31回】中年Ubuntu野郎はファンレスPCの夢を見ない

タイトルからは分かりにくいが、今回の題材はN100DC-ITXだ

 30年前のパソコンにはCPUファンなんてものは必要なかった。

 しかし顕著なところではWindows 95の登場以降CPUの高速化と微細化が必要となり、CPUファンが必須となっていった。今では簡易を含めて水冷も広く使われている。

 一方それほどの絶対的な速度は必要なくファンが不要なCPU(SoC)のニーズも一定数はあり、Intel Atomシリーズを思い出す人も多いだろう。

 そしてそれらのコアがCore iシリーズで1つとなった。

 Atomシリーズの進化系がEコアとして内蔵されるようになり、そのEコアだけで構成されたのがAlder Lake-Nシリーズであることは、本誌の読者であればよくご存知のことだろう。

 ご覧のとおりAlder Lake-N採用のPCはミニPCばかりであった。しかし先月末に、待望のAlder Lake-Nオンボードのマザーボードが販売開始した。

 しかもファンレスでDCジャック付きなんて心が踊るではないか。電源ユニットが不要でHDDを装着しなければゼロスピンドルも視野に入ってくる。これは是が非でも手に入れなくてはいけないと思い、旅行中にも関わらず発売日当日に購入してしまった。

 確かにファンレスと聞くと無音状況での稼働を夢見るが、本当に大丈夫なのかと心配になるものだ。この懸念を払拭するためには、CPUの温度を取得することが重要となる。

 というわけで、今回はN100DC-ITXのレビューをしつつ、Ubuntuで温度を取得する方法を紹介する。

今回のハードウェア構成

 今回の基本的なハードウェア構成は次となる。

メーカー型番
マザーボードASRockN100DC-ITX
メモリKingstonKVR32N22S8/8
SSDWestern DigitalWDS500G3X0C
ACアダプタエレコムACDC-1965FUBK
ケースSilverStoneSG13

 メモリは、たまたまいいタイミングでAmazonのセールがあったので購入した。用途にもよるが8GBもあれば充分だろう。

 ACアダプタに関しては、条件に合ったものを探すと富士通のノートPC用を謳っているものが適合するとわかった。65Wもあれば充分かなと考えたが、もっとワット数の低いものでも問題なく動作する。そもそもそんなに接続できるハードウェアが多くない。

 ケースは、大きめのケースファンが入ることも考えて選定した。ATX電源用のスペースがあるが、今回は使用しないので空いたままとなる。N-ATXBP-PROがあればよかったが、現在は入手困難のようなので塩ビ板でどうにかしようかと検討中である。

今回のUbuntuバージョン

 今回使用するUbuntuのバージョンは23.04とする。22.04 LTSでもCPUの温度を取得できることは確認しているで、そちらでもかまわない。

 またインストーラはデフォルトのものではなく、旧インストーラを使用している。なぜかデフォルトのインストーラではインストール途中で止まってしまったが、時間の都合もあり詳しい状況を調査していない。

 Ubuntu 23.04で「このシステムについて」を開くと次のようになる。

N100DC-ITXにインストールしたUbuntu23.04の「このシステムについて」

 ハードウェアは特に問題なく認識されているが、「ファームウェアのバージョン」が1.05になっているのは気にかかる。執筆段階で1.06がダウンロードできるようになっているので、おいおいアップデートを行いたい。

N100DC-ITX雑感

 N100DC-ITXについて雑感を述べるのであれば、おそらくこれはデスクトップ用途というよりサーバー用途を意図しているのではないかということである。シリアルポートがあり、パラレルポート用のピンヘッダーがあるということは、特殊な装置用であると考えられる。

 ディスプレイ出力もD-Sub15ピン(アナログ)とHDMIだけというのも、今となってはデスクトップ用としては心許ない。昨今の厳しい電力事情を考えると、自宅用サーバーのマザーボードをこれに交換するのもありだろう。

 拡張スロットは3つで、1つはNVMe SSD用のM.2スロットだ。ここはいいだろう。もう1つWi-Fi用のM.2スロットがある。こちらは要注意で、CNViというバス専用である。換言すると一般的なPCIeではないということで、専用のモジュールが必要となる。ここにWi-Fiではないモジュールを接続しようとしている筆者のようなユーザーは気をつけて欲しい。なお余談だがASUS PRIME N100I-D D4はWi-Fi用のスロットにもPCIeが通っているようなので、国内販売を期待したいところだ。

 あとはPCIe x1スロットがあり、これをどのように使用するかがポイントだろう。筆者はややもったいないが、2.5GbEのNICを接続予定だ。

Ubuntuで温度監視

 Ubuntuで温度を監視するには、lm-sensorsというパッケージをインストールし、その後にセンサーを検出する。端末を開き、次のコマンドを実行する。

$ sudo apt install lm-sensors
$ sudo sensors-detect

 sensors-detectを実行するといろいろ質問されるが、基本的にはエンターキーを推し続ければいい。「Do you want to add these lines automatically to /etc/modules?」という質問に関しては「yes」を入力するのがオススメだ。

sensors-detectコマンドの実行結果の最後

 さらにここで次のコマンドを実行し、設定を有効にする。

$ sudo systemctl restart systemd-modules-load.service

 ちなみに/etc/modulesはsensors-detectコマンドの最後にリストされたカーネルモジュールを起動時に読み込むための設定ファイルだが、現在は歴史的な経緯から残されているだけだ。/etc/modules-load.d/以下にmodules.confという名称でシンボリックリンクが作成されており、これが読み込まれている。

 すなわち/etc/modulesに書き込むより、/etc/modules-load.d/以下に「cut here」間のモジュールを記したファイル(拡張子はconf)を作成するべきだということになる。

 再起動後端末を開き、「sensors」コマンドを実行すると温度が表示される。CPUの温度は「coretemp-isa-0000」、NVMe SSDの温度は「nvme-pci-0200」だ。

sensorsコマンドの実行結果

 この図だとCPUの温度は50℃だ。それなりに冷房が効いていてケースも開けっ放しなので、このくらいで収まっているのだろう。

 いちいちsensorsコマンドを実行して温度を取得するのも何なので、グラフで表示できるようにするため、「psensor」パッケージをインストールし、起動する。

 グラフとして表示したい項目にチェックを入れると、左側に表示される。今回はCore 0から3まででいいだろう。

グラフとして表示したい項目にチェックを入れる

負荷テスト

 意図的にCPU負荷を上げるツールとして、「stress-ng」というパッケージがある。APTとSnapの両方でパッケージが提供されているが、今回はSnapパッケージ版をインストールする。Ubuntuソフトウェアからインストールするのが簡単だろう。

 インストール完了後、端末から次のコマンドを実行する。

$ stress-ng --cpu 4

 「システムモニター」を起動してみると、確かにCPU負荷は4コアとも100%となっている。 Psensorを見ていると、90℃を超えている。現実的にN100DC-ITXに長時間(とはいえ今回だと20分弱)負荷をかけ続ける状況は考えにくいが、どうしても温度が高すぎるという印象を持ってしまう。

ファンレスでの実行結果

 12cmのケースファンを取り付けて再実験してみよう。具体的にはF12-PWMを購入した。

 効果は絶大で、CPU温度は75℃止まりだった。

ケースファンありでの実行結果

消費電力について

 消費電力は、筆者所有のワットチェッカーによるとケースファンなしのときにアイドル時で11W、高負荷時で23W程度だった。ケースファンありのときにアイドル時で13W、高負荷時で25W程度だった。絶対的に多いわけではないが、かといって少ないわけでもない。

 第26回で使用したLarkBox X(2022年モデル)はアイドル時の消費電力が8W程度だった。

 UEFI BIOSの設定を確認してみると「Long Duration Power Limit」が「10」だった。これはすなわちPL1が「10W」ということである。ちなみにここを「6」にしてみても、アイドル時の消費電力は下がらなかった。同じく「Short Duration Power Limit」は25なので、これはすなわちPL2が25Wということだ。

UEFI BIOSのOC Tweakerメニュー

 理由は不明だが「Package C State Support」がデフォルトでDisabledになっていた。これをEnabledにして、より消費電力を減らすべきだろう。同時に「Enhanced Halt State(C1E)」もEnabledにした。

UEFI BIOSのAdvancedメニュー

結論

 結論としては、ケースファンはなくても動作することが期待できるものの、あると絶大な効果がある。筆者としてもファンレスPCの夢は見ず、ケースファンをつけて運用するつもりだ。

 用途によっては「Long Duration Power Limit」と「Short Duration Power Limit」を下げると発熱を減らすことが期待できるが、夢は夢のままとしておきたい。