"言葉には言霊が宿る"と昔から言われていますが、声に出した言葉は現実に影響を与えてしまう力があるようです。「 このNUCいいなぁ」とつぶやいたら、Ubuntu Japanese Teamの黒幕の人に「お買い上げRecipe執筆よろしくお願いします」と言われ、気がついたら購入ボタンをポチっと押してました。言霊こわいよ言霊!
今回は、NUCという小型PCならびにThunderboltをUbuntuで使う方法を紹介します。
NUC旋風の到来
2012年末ごろから自作PC分野でNUCという小型PCが話題になっています。NUC(Next Unit of Computing)とは、Intelによってデザインされた小型PCフォームファクターのことで、約10cm四方の手のひらに乗せられるほどのサイズのPCです。CDケースを4枚重ねたものより一回り小さい,と言えば想像がつくでしょうか。これほど小さなため、VESAマウント対応のディスプレイの後ろにNUCを設置することも可能です。
図1 NUC本体はこんなに小さい
このような製品が登場した背景として、最近はスマートフォンやタブレットなどのARMアーキテクチャーのデバイスに需要が移っており、x86アーキテクチャーのデスクトップPCの需要が減少すると予想されている事情があります。
このため、Intelは今後3年をかけてデスクトップPC向けマザーボード事業を縮小し、その分NUCやUltrabookなどのより新しく収益の上がりそうな事業に力を入れる予定です。NUCはサイズを小型にすることでデジタルサイネージ、キオスク端末、ホームシアターといった分野への需要など、従来のデスクトップPCより広い利用用途が見込まれています。
ハードウェア構成
今回テストしたハードウェアの構成です。
執筆時点(2013年2月)では3機種のNUCベアボーンが発売されており、DC3217BYはそのうちのCore i3 3217U/Thunderbolt搭載モデルです。他の2モデルはThunderboltが非搭載の代わりに有線LANが搭載されており、CPUにCore i3 3217UとCeleron 847を採用したモデルがそれぞれラインナップされています。また、NUCのマザーボード単品でも購入することができますが、価格差があまりないためNUCベアボーンを買うのがお勧めです。
購入する際は、NUCベアボーンの他に少なくともメモリー、SSD[1] 、3ピン電源ケーブル[2] の3つも入手する必要があります。内蔵の無線モジュールは、NUC本体との同時購入のみ可としている店が多いので必要であれば一緒に購入しておくことをお勧めします。また購入後は、数々の問題が修正されているためBIOSを最新版にアップデートすることをお勧めします。
Ubuntuのインストール
今回はUbuntu 12.10 Desktop amd64のisoイメージを元に、[スタートアップ・ディスクの作成]を利用してUSBメモリーにインストールイメージを書き込み、NUCにインストールしました。
USBメモリーから起動させるため、電源を入れた後F2キーを押し続けてUEFIセットアップ画面を開きます。[Boot]カテゴリを開き、[Boot Priority]の項目でUSBドライブを一番上に移動させてください。設定が完了したら、F10キーを押した後で確認のYキーを押して設定を保存します。
再起動後にUbuntuインストーラーの指示どおりにインストールを進めれば、特に問題なくインストールが完了しました。HDMI接続によるディスプレイ表示やUSBなども正常に動作しており、内蔵の無線モジュールでWifi接続したり、Bluetoothを利用してApple Magic Trackpadが動作することも確認できました[3] 。
[3] Thunderbolt非搭載のDC3217IYEなどのモデルでは有線LANにIntel 82579Vチップが使われているため、Ubuntu 11.04以降(正確にはカーネル2.6.36以降)で有線LANが動作するはずです。現実にUbuntuをインストールする場合は12.04以降が多いと思われるので問題ないでしょう。
3Dアクセラレーション
Unityを動作させるにはOpenGL 2.0対応のグラフィックカードが必要になります。次のコマンドでUnityに対応しているかを確認できます。
$ /usr/lib/nux/unity_support_test -p
DC3217BYはグラフィック機能としてIntel HD Graphics 4000をCPUに内蔵しており、フルHD動画でも快適に再生できます。
図2 すべて「Yes」となっておりUnity 3Dに対応していることが分かる
NUCの消費電力
ワットモニターを使ってNUCの消費電力計測を行いました。大きさの割に電源OFF時の待機電力がやや高めですが、フルHD動画再生などの負荷の高い作業でなければ使用時の消費電力は15~20W前後で省電力です。
電源OFF時:3W
アイドル時:10W
最高負荷時:39W
UbuntuでのThunderboltサポート
Thunderboltとは、IntelとAppleが共同開発した高速汎用データ伝送規格のことで、DisplayPortとPCI Expressの両方のプロトコルをサポートしています。コネクター形状はMini DisplayPortが採用されており、最大転送速度は10Gbpsです。USB 2.0の最大480MbpsやUSB 3.0の最大5Gbpsと比べても高速なことが分かります。また、周辺機器をデイジーチェーン(数珠つなぎ)に接続することができ、最大10Wのバスパワーが供給できるという特徴もあります。
Appleが共同開発にかかわっていた関係から、Macintoshでは2011年頃から採用されていましたが、Windows向けPCでは2012年以降じわじわと採用が進んでいる段階です。Thunderbolt対応の周辺機器はUSB 3.0と比べるとだいぶ少ないですが、徐々に増えています。
今回検証したDC3217BYにはThunderboltが搭載されているため、Ubuntu 12.10/12.04で次の2種類のThunderboltアダプタの動作をテストしました[4] 。結論として、ThunderboltはすでにUbuntuでサポートされているDisplayPortとPCI Express規格を利用しているためUbuntuで動作しますが、Thunderboltで接続するデバイスによっては動作させるためのドライバーが必要になります。
Apple Thunderbolt-ギガビットEthernetアダプタ
Apple Thunderbolt-ギガビットEthernetアダプタ はUbuntu 12.10以上であれば動作します[5] 。このアダプタにはBroadcom社のBCM57762チップが採用されているため、それに対応したtg3カーネルモジュールが必要なためです。Ubuntu 12.04で使う場合は、linux-generic-lts-quantalパッケージをインストールしてBackportカーネルを利用するか、別途Broadcom社のサイトからtg3ドライバーをダウンロードしてインストールする必要があります。
ELECOM Mini DisplayPort-DVI変換アダプタ AD-MDPDVIWH
ELECOM Mini DisplayPort-DVI変換アダプタ AD-MDPDVIWH はDisplayPort規格のためUbuntu 12.10/12.04で問題なく動作します。また、HDMI接続とThunderbolt-DVI接続でのデュアルディスプレイも問題なく利用できました。
図3 ( 左) Mini DisplayPort-DVI変換アダプタ ( 右) Thunderbolt-ギガビットEthernetアダプタ
ネットワーク速度計測
ThunderboltとUSB2.0でのネットワーク速度の比較を行うため、Apple Thunderbolt-ギガビットEthernetアダプタとUSB-LANアダプタ(Buffalo LUA3-U2-AGT)について測定しました。ネットワークの速度計測にはnetperf/iperf/nuttcpなどといったコマンドラインツールが利用できますが、今回はiperfを利用することにします。
iperfでネットワーク速度を測定するには、サーバー側PCとクライアント側PCの両方でiperfを起動して測定する必要があります。まずは両方のPCにiperfをインストールしてから、サーバー側とクライアント側でそれぞれiperfコマンドを実行します。
iperfのインストール
$ sudo apt-get install iperf
iperfの実行(サーバー側)
$ iperf -s
iperfの実行(クライアント側)
$ iperf -c 192.168.0.3
サーバー側とクライアント側の両方に測定結果が表示される(例では3回計測)
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.0.3 port 5001 connected with 192.168.0.100 port 53039
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.0 sec 1.06 GBytes 908 Mbits/sec
[ 5] local 192.168.0.3 port 5001 connected with 192.168.0.100 port 53040
[ 5] 0.0-10.0 sec 1.06 GBytes 908 Mbits/sec
[ 4] local 192.168.0.3 port 5001 connected with 192.168.0.100 port 53041
[ 4] 0.0-10.0 sec 1.06 GBytes 908 Mbits/sec
Thunderbolt-ギガビットEthernetアダプタとUSB-LANアダプタでそれぞれ3回測定した平均結果を次に示します。
Thunderbolt-Ethernetアダプタ:908 Mbits/sec
USB-LANアダプタ(USB2.0) :218 Mbits/sec
Thunderbolt接続ではギガビットイーサネットのボトルネックとならず、1Gbpsに近いかなり良い結果が出ています。それに対して、USB2.0接続ではUSBの速度によるボトルネックかネットワークチップの性能によるものか不明ですが、理論値の半分以下しか速度が出ていません[6] 。
まとめ
今回のRecipeをまとめると、次の事柄が言えます。
NUCで最新のUbuntuは問題なく動作します。
ThunderboltはUbuntuで利用できますが、USB3.0に比べて対応機器が少ないのがネック。
NUCはノートPCのようにディスプレイがついていないので、家庭や職場で場所を取らずに大画面のデスクトップを使いたい人にお勧め。