SkylakeでLinux(CentOS、Ubuntu)は動くのか?
8/5 発売開始のCore i7-6700K + Z170でLinuxに挑戦!
2015-08-24
いつもパソコン工房インターネット通販ショップへご来店いただき、誠にありがとうございます。パソコン実験工房の親方です。
社内でも、最近はもっぱらWindows 10の無償アップグレードの話題に終始する状況のなか、職人1号が突然こんなことを言い出しました。
職人1号:「そういえば、今後Haswellや対応マザーがなくなってもLinuxって動かせるの?」
「word2vecで遊んでみた」、「あんちべさんと一緒に Rakuten MA で形態素解析」でLinuxに挑戦した職人1号のほかにも、社内の法人営業担当もLinuxでの動作には高い関心を持っているようです。
実は、今回のようにCPU、チップセット、メモリーと3つが同時に変更になるような大掛かりなプラットフォームの変更は、お客様にとっても非常に悩ましいことなので、案件ベースでは迅速な検証とその結果のレポーティングがとても大切なことなのです。
親方:「やりましょう。」
と、いうわけで8/5に発売したばかりの LEVEL∞の「Skylake」モデルを使用して、Linuxの動作実験を行ってみます。
Skylake の詳細については、こちらで職人3号が詳しくレポートさせていただきましたのでこちらに任せるとして、今回はSkylakeモデルにニーズの高いCentOS、Ubuntuをインストールしてみて、その挙動などを確認いたします。
パソコンの準備-LEVEL∞ Lev-R017-i7K-TM-SP
用意したのは LEVEL∞HUB でも展示、販売中のこのパソコンです。
●Lev-R017-i7K-TM-SPの仕様 | |
CPU | Core i7-6700K プロセッサー (4.0-4.2GHz/4コア/8スレッド/8MBキャッシュ/TDP95W) |
マザーボード | Z170 Express チップセット |
メモリ | DDR4-2133 4GB×2(デュアルチャンネル、計8GB) |
ストレージ | 120GB Serial-ATA SSD 1TB 3.5インチ Serial-ATA HDD |
光学ドライブ | 24倍速DVDスーパーマルチドライブ |
グラフィックカード | GeForce GTX 970 4GB GDDR5 |
電源ユニット | 500W 80PLUS SILVER認証 ATX電源 |
標準OS | Windows 8.1 64ビット(DSP) |
秋葉原のLEVEL∞HUB限定で販売している、パソコン工房ECサイトの人気モデルにSSDを加えた、お買い得スペシャルモデルです。
ここから、ビデオカードと1TBのHDDを外し、最小限の構成で実験します。
なぜかCentOS 6.5
Linuxといっても、数あるLinuxディストリビューションからどれを?ということになりますが、社内的にはなぜか需要の多い『Cent OS 6.5』で実験することにしました。
●CentOS 6.5とは?
CentOSは、商用のRed Hat Enterprise Linux (RHELと呼ばれることもあります) というOSに含まれる商標や商用パッケージを取り除いてリビルドされたOSで、自由に提供されています。
CentOSの特徴は、Red Hat Enterprise Linuxがベースであることから、非常に安定していると言われていることに加えて、無償ライセンスでありながら、サポート期間も長いことから、商用サポートが不要な企業ではサーバーなどの高度な用途にも採用されています。
また、CentOS 6.5は、2013年12月1日にリリースされたOSです。これだけを見ると新しいOSに見えますが、2004年頃から長く続く、いわゆる2.6系カーネルと呼ばれるOSの中核部分を搭載しています。このため、枯れた安定したカーネルを持つ CentOS 6.5 やその次のバージョン6.6が支持される理由でもあります。
2012年頃から、多くのLinuxディストリビューションがより新しい3.x系カーネルへシフトする中で、Cent OSでも対応できない機能などが目立つようになり、現在は、この3.x系カーネルを搭載した、2015年3月31日リリースの7.1(7.1-1503) が最新のバージョンです。
※CentOS 6.x系は、2015年8月7日に最新バージョンとなる 6.7 がリリースされています。
CentOS インストール
前置きが長くなりましたが、Cent OS 6.5のインストールを開始します。
UEFIでは動かないといった噂もちらほらと聞いてはいたのですが、2013年の年末リリースのOSでもあるので、ここは論より証拠、実験します。
用意したメディアから起動。DVDメディアから読み込みが始まります。8匹のペンギン (=8論理CPU) が確認できますね。
光学ドライブを見失うこともなく
「インストール前にこのディスクのチェックをする?」
と聞かれます。Z170のAHCI SATAコントローラーは認識できたようです。でも時間がないので「Skip」です。
早速ここで、感じの悪いメッセージが登場します。
「サポートしないデバイス、見つけましたー」
一瞬、いやーな気持ちになりますが、軽い気持ちで無視します。そう来られても、「OK」を押すしかありません。
来ました。ここから先は、あまり深いことを考えずに、特別な設定などは一切行わず進めて行きます。
キーボードの設定、パーティションの設定、地域の設定、インストールパッケージの設定等々。インストールパッケージは、ここでは、デフォルトでチェックの入っているDesktopのまま特に追加などは行わずに進めて行きます。
そして、無事にインストール完了しました。メディアを取り出して再起動します。
ログイン画面に辿りつくには、再起動後に基本設定が必要です。ここもユーザー設定、時刻の設定の順で進めて、「Kdump」を有効にしたら再起動でひと通りのセットアップ作業は完了です。
すんなりと成功?
再起動して、いよいよログイン画面を待ちます。
「キター。」
途中、いやーなメッセージが出ていたことなどすっかり忘れ、まずは一安心。
それにしてもすんなりとここまで来ました。これはこれでちょっと拍子抜けです。
では、早速チェックを進めて行きます。
ここまでは、X Windows システムも動作し、モニターもスペック通りのフルHDで出力されていますし、マウスとキーボードの操作も何ら問題ないと感じます。ネットの設定や実際の接続も問題なしです。
とは言え、何が起こっているのかもわからないので、lspci コマンドで、PCIデバイス周りをしっかり認識しているかどうか確認してみます。
-
$ lspci
00:00.0 Host bridge: Intel Corporation Device 191f (rev 07)
00:01.0 PCI bridge: Intel Corporation Device 1901 (rev 07)
00:02.0 VGA compatible controller: Intel Corporation Device 1912 (rev 06)
00:08.0 System peripheral: Intel Corporation Device 1911
00:14.0 USB controller: Intel Corporation Device a12f (rev 30)
00:14.1 USB controller: Intel Corporation Device a130 (rev 30)
00:14.2 Signal processing controller: Intel Corporation Device a131 (rev 30)
00:15.0 Signal processing controller: Intel Corporation Device a160 (rev 30)
00:15.1 Signal processing controller: Intel Corporation Device a161 (rev 30)
00:16.0 Communication controller: Intel Corporation Device a13a (rev 30)
00:17.0 SATA controller: Intel Corporation Device a102 (rev 30)
00:1d.0 PCI bridge: Intel Corporation Device a118 (rev f0)
00:1d.3 PCI bridge: Intel Corporation Device a11b (rev f0)
00:1e.0 Signal processing controller: Intel Corporation Device a127 (rev 30)
00:1f.0 ISA bridge: Intel Corporation Device a145 (rev 30)
00:1f.2 Memory controller: Intel Corporation Device a121 (rev 30)
00:1f.3 Audio device: Intel Corporation Device a170 (rev 30)
00:1f.4 SMBus: Intel Corporation Device a123 (rev 30)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
結果は御覧の通りです。
オンボードのイーサネットコントローラー以外は、全て「intel Corporation Device xxxx」となっています。
Cent OS 6.5 からは、インテルのデバイスであることまでは認識できているようです。
次に、もう少し詳細に動作を見るためにdmesg (display message) コマンドを使ってカーネルメッセージを見てみましょう。
-
$ dmesg | more
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013
Command line: ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS rd_NO_MD rd_LVM_LV=VolGroup/lv_swap crashkernel=128M KEYBOARDTYPE=pc KEYTABLE=jp106 rd_LVM_LV=VolGroup/lv_root LANG=ja_JP.UTF-8 rd_NO_DM rhgb quiet
KERNEL supported cpus:
Intel GenuineIntel
AMD AuthenticAMD
Centaur CentaurHauls
BIOS-provided physical RAM map:
--続ける--
出だしのこの辺はよいのですが、しばらく続けて行くと・・・
-
(上の続き(中略))
Detected CPU family 6 model 94
UNSUPPORTED HARDWARE DEVICE: Intel CPU model
--続ける--
Skylakeに対して「サポートしないハードウェアデバイス」と言っています。
-
(上の続き(中略))
Booting Node 0, Processors #1 #2 #3 #4 #5 #6 #7 Ok.
Brought up 8 CPUs
Total of 8 processors activated (64127.88 BogoMIPS)
--続ける--
一方で、インテルHTを含めた8つの論理CPU全てが無事に「activated」と出ています。
-
(上の続き(中略))
ACPI Error (dswload-0659): [RHUB] Namespace lookup failure, AE_NOT_FOUND
ACPI Exception: AE_NOT_FOUND, During name lookup/catalog (20090903/psloop-230)
ACPI Error (psparse-0537): Method parse/execution failed [\] (Node ffffffff81fdffb0), AE_NOT_FOUND
ACPI Error (dswload-0659): [I2C0] Namespace lookup failure, AE_NOT_FOUND
ACPI Exception: AE_NOT_FOUND, During name lookup/catalog (20090903/psloop-230)
ACPI Error (psparse-0537): Method parse/execution failed [\] (Node ffffffff81fdffb0), AE_NOT_FOUND
ACPI Error (dswload-0659): [I2C1] Namespace lookup failure, AE_NOT_FOUND
ACPI Exception: AE_NOT_FOUND, During name lookup/catalog (20090903/psloop-230)
--続ける--
しかし、さらに続けて行くと、ACPIのエラーがたくさん出てきます。
上記は、ACPIに関するメッセージのほんの一部分で、同じようなメッセージが繰り返し表示されています。
ACPIと言えば、パソコンの電源管理に関わる重要な部分なので、これは問題ありかも知れません。
-
(上の続き(中略))
ahci 0000:00:17.0: version 3.0
ahci 0000:00:17.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
alloc irq_desc for 129 on node -1
alloc kstat_irqs on node -1
alloc irq_2_iommu on node -1
ahci 0000:00:17.0: irq 129 for MSI/MSI-X
ahci 0000:00:17.0: AHCI 0001.0301 32 slots 6 ports 6 Gbps 0x3f impl SATA mode
ahci 0000:00:17.0: flags: 64bit ncq sntf led clo only pio slum part ems apst
ahci 0000:00:17.0: setting latency timer to 64
(中略)
ata3: SATA link down (SStatus 4 SControl 300)
ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
ata6: SATA link down (SStatus 4 SControl 300)
ata5: SATA link down (SStatus 4 SControl 300)
ata2: SATA link down (SStatus 4 SControl 300)
ata4: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
ata1.00: ACPI _SDD failed (AE 0x5)
ata4.00: ACPI _SDD failed (AE 0x5)
--続ける--
ストレージ周りです。AHCIでSATA SSDと光学ドライブをリンク速度6.0Gbps、1.5Gbpsでそれぞれ動作させているようです。ただし、ここでも接続してある2ポートのACPIで「failed」と出ています。
-
(上の続き(中略))
r8169 Gigabit Ethernet driver 2.3LK-NAPI loaded
r8169 0000:03:00.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
r8169 0000:03:00.0: (unregistered net_device): unknown MAC, using family default
r8169 0000:03:00.0: setting latency timer to 64
alloc irq_desc for 131 on node -1
alloc kstat_irqs on node -1
alloc irq_2_iommu on node -1
r8169 0000:03:00.0: irq 131 for MSI/MSI-X
r8169 0000:03:00.0: eth0: RTL8168b/8111b at 0xffffc9001009e000, (MACアドレス), XID 14100800 IRQ 131
r8169 0000:03:00.0: eth0: jumbo features [frames: 4080 bytes, tx checksumming: ko]
--続ける--
(後略)
ネットワークはr8169ドライバーによって、正常に認識されているようです。
この他、USBもXHCIドライバー(USB3.0), EHCI(USB2.0), UHCI(USB1.1)ドライバーがロードされ、接続したUSBのキーボード/マウスも認識されていました。
ここまで、ターミナルからデバイス周りのチェックを行いましたが、結果としては、
「正常に動いているようには見えますが、電源管理には問題の可能性があります。」
と一旦結論付けます。
各部動作のチェック
一通りターミナルからのデバイスチェックが終わったところで、各デバイスの動きが適切か、動かせる部分は実際に動かして動作確認を行いました。
そして、ここまでの結果をまとめたのが以下の表です。
●CentOS 6.5 結果
チェック項目 | チェック内容 | 結果 |
UEFI インストール | 特別な設定無しでインストールが完了する | ○ |
作成パーティションの確認 | partedコマンドで全領域の使用を確認 | ○ |
X Window System の動作 | マウス/キーボードの機能確認、モニターの解像度確認 | ○ |
有線LANポート | ドライバーのチェック後、1GBのファイル転送を行う | ○ |
ハードドライブ | ファイルコピーを確認 | ○ |
負荷ランニング | 負荷を掛け、停止/再起動が起こらないこと | ○ |
再起動 | 10回連続で繰り返し確認を行う | × |
スリープからの復帰 | 10回連続で繰り返し確認を行う | × |
CPUの認識 | 物理構成との一致を確認 | ○ |
メモリーの認識 | 物理構成との一致を確認 | ○ |
VGAの認識 | 物理構成との一致を確認 | ○ |
光ディスクドライブ | オートマウント、アンマウント、イジェクト、ファイルコピー | ○ |
サウンド | サウンド設定内でテストを実施して問題ないこと | ○ |
再起動については、ターミナルからのシャットダウンコマンドでの実行とタスクバーの両方から実行したところ、GUIからの再起動において、再起動ボタンを押下後にブラックアウトする場合が10回中5回ほどありました。
このため結果としてはNGとしています。また、スリープからの復帰にも問題ありで復帰させても再開しないのでNGとしています。
蛇足ですが、試しにFlash Playerを入れてYoutubeで動画再生してみたところ、かくつきながらもフルHDの動画が再生できました。
やはり、ACPIの電源管理がうまく行っていないようです。
念のため、下記コマンドで確認してみます。
-
$ cat /sys/power/state
mem disk
スタンバイに対応していれば、「mem disk」の前に「standby」を加えた、「standby mem disk」と結果が返ってくるのですが、どうやら、CentOS 6.5 からも「standby」には対応できていないようです。
試しに、「サスペンド」は「catコマンド」で「mem」(メモリーに作業の状態を書き込むスリープ状態)と帰ってきてはいるのですが、GUIでのサスペンドの実行では、スリープするものの復帰しないので、コマンドラインでも試してみます。
- # echo -n mem > /sys/power/state
結果はGUIでの操作と全く同じで、何度やっても復帰できませんでした。
それでは、作業の状態をストレージに書込み休止する「ハイバネーション」はどうでしょうか。
- # echo -n disk > /sys/power/state
これは、うまく復帰してくれます。
というわけで、やはり電源管理、再起動やスタンバイ、サスペンドに問題があることが分かりました。
因みに、CentOS の他、Ubuntu 14.04.01とUbuntu 14.10についても同様のチェックをしましたので、一挙公開します。
●Ubuntu 14.04.01 LTS 結果
チェック項目 | チェック内容 | 結果 |
UEFI インストール | 特別な設定無しでインストールが完了する | ○ |
作成パーティションの確認 | partedコマンドで全領域の使用を確認 | ○ |
X Window System の動作 | マウス/キーボードの機能確認、モニターの解像度確認 | △ ※1 |
有線LANポート | ドライバーのチェック後、1GBのファイル転送を行う | ○ |
ハードドライブ | ファイルコピーを確認 | ○ |
負荷ランニング | 負荷を掛け、停止/再起動が起こらないこと | ○ |
再起動 | 10回連続で繰り返し確認を行う | ○ |
スリープからの復帰 | 10回連続で繰り返し確認を行う | × |
CPUの認識 | 物理構成との一致を確認 | ○ |
メモリーの認識 | 物理構成との一致を確認 | ○ |
VGAの認識 | 物理構成との一致を確認 | ○ |
光ディスクドライブ | オートマウント、アンマウント、イジェクト、ファイルコピー | ○ |
サウンド | サウンド設定内でテストを実施して問題ないこと | × |
※1. モニターの解像度は、1024x768固定で変更できず
●Ubuntu 14.10 結果
チェック項目 | チェック内容 | 結果 |
UEFI インストール | 特別な設定無しでインストールが完了する | ○ |
作成パーティションの確認 | partedコマンドで全領域の使用を確認 | ○ |
X Window System の動作 | マウス/キーボードの機能確認、モニターの解像度確認 | △ ※1 |
有線LANポート | ドライバーのチェック後、1GBのファイル転送を行う | ○ |
ハードドライブ | ファイルコピーを確認 | ○ |
負荷ランニング | 負荷を掛け、停止/再起動が起こらないこと | ○ |
再起動 | 10回連続で繰り返し確認を行う | ○ |
スリープからの復帰 | 10回連続で繰り返し確認を行う | × |
CPUの認識 | 物理構成との一致を確認 | ○ |
メモリーの認識 | 物理構成との一致を確認 | ○ |
VGAの認識 | 物理構成との一致を確認 | ○ |
光ディスクドライブ | オートマウント、アンマウント、イジェクト、ファイルコピー | ○ |
サウンド | サウンド設定内でテストを実施して問題ないこと | × |
※1. モニターの解像度は、1024x768固定で変更できず
Ubuntuでは、再起動はおこなえるものの、スリープからの復帰ができない点は、CentOSと同じでした。ACPI周りは、より新しいカーネルのUbuntuでも互換性に問題があるようです。サウンドも認識はしているようですが、時間の関係もあって音を出すところまで確認ができませんでした。
さらにUbuntu 14.10 については、CPU 内蔵グラフィックドライバーがインテルの開発者サイトにあるので、ダメ元でインストールしましたが、結果は以下のような状況に…。
ドライバーインストール→再起動後フルHDで起動したので成功と思いきや、何故か画面が崩れます。マウスの操作に連動して画面がちらついたり移動してしまい、マウスもまったく機能しませんでした。
これではNGです。
まとめ
今回は、時間の関係で肝心なパフォーマンスチェックには至りませんでしたが、今回の実験では、ACPI周りで互換性がなさそうなことが分かりました。
ACPI周りを除いて、インボックスのドライバーと互換性がありそうなだけに残念な結果ですが、ACPIによる電源管理は無効としてしまって、ひたすらパソコンを動かし続けるという用途限定であれば、パフォーマンンス次第では検討の余地があるかも知れません。また、実験に用意した各Linuxも最新バージョンを用意すれば、また別の結果が出ていた可能性も大いに考えられるので、引き続き実験を続けたいと思います。
今回の実験の結論としては、
「実験に用意したパソコンと各Linuxにおいて、これらを完全に動作させるには、相当の課題が残ります。」
と結論付けることにします。
Linuxというと、ハードもソフトも枯れたものでという考え方がある一方で、先端分野では最新デバイスとの組み合わせのニーズも少なからずですが常に存在しています。今回のレポートが少しでもお役に立てれば幸いです。
Skylake+Linuxの動作に関する情報やご要望がありましたら、是非ともお知らせください。
執筆:パソコン工房 親方
include_once("skylake_footer.php"); ?>