X299マザーボードにSkylake-Xを搭載した自作水冷マシンにmacOSをインストールする記事がtonymacx86で紹介されています。iMac Proのようなマシンです。この記事が最初に書かれたのは去年の8月ですが、適宜アップデートされているようです。18コア36スレッドの究極のmacOSハードウェアを作るのは、ロマンですね。記事はかなりの長文ですのでサクッと抄訳してみたいと思います。
>>—————————-ここから抄訳—————————-<<
Skylake-X/X299のマシンにmacOS High Sierra 10.13.2をインストールしてiMac Pro相当のマシンを作るためのガイドです。
Table of Contents
A.) ハードウェアの概要
i7-7640X と 7740X は、2チャンネルのDDR4-2666であったり、PCI express 3.0が16本しかなかったりで、見劣りがします。i7-7800とi7-7820は4チャンネルDDR4-2666ですがPCIeが28本です。ということで、最高の性能を得るためには、i9-7900X以上のCPUを選択することをお勧めします。
今回の構成は以下です。
- マザーボード: Asus Prime X299 Deluxe
- CPU: i9-7980XE (18 core, 4.4Ghz)
- メモリ: Tridentz DDR-4 3200 Mhz 128GB (8x16GB)
- GPU: Gigabyte Aorus GTX 1080 Ti Waterforce WB Extreme Edition 11GB
- システムディスク: EVO 960 NVMe M.2 1TB (system disk macOS High Sierra 10.13.2); EVO 960 NVMe M.2 1TB (system disk macOS Sierra 10.12.6 Sierra)
- 電源: Corsair AX1500i
- モニター: LG 38UC99-W 38″ curved 21:9 Ultra Wide QHD+ IPS Display (3840 pix x 1600 pix)
- Bluetooth + Wifi: BCM94360CD
- ケース: Thermaltake Core X71
- CPUとグラボの水冷: 2台のD5ポンプ、360mm, 280mmのラジエータを複数使ったDIY水冷
B.) マザーボードのBIOS
B1.) ASUS BIOSにパッチを当てる
本物のMacでは、MSR 0xE2レジスタが書き込み可能で、これによりOSX XCPM電力制御を行っています。そこで、ASUSのBIOSにパッチを当て、MSR 0xE2レジスターを書き込みできるようにアンロックします。BIOSにパッチを当てる手順は以下です。
- BREWをインストールしてQT5をインストールする
- CodeRush UEFIPatchをGithubから入手する
- @interferenc氏によって作られたパッチのファイルpatches.txtを入手する
- ASUSから最新のBIOSを入手する
- UEFIPatchコマンドでパッチを当てる
- 出来上がったBIOSをFAT32のUSBメモリに入れる
- BIOS起動時にF2を押してUSBからBIOSをアップデートする
再起動した後、ターミナルからbdmesg | grep MSRコマンドを入れると、MSR 0xE2レジスターがアンロックされたことを確認できます。
B2.) ASUSのBIOS設定
BIOSを設定します。(訳注:通常の設定ですので省略します)
B3.) – GigabyteのBIOS設定
BIOSを設定します。(訳注:こちらも省略します)
C.) エラーを防ぐための重要なアドバイス
- 配布しているファイルでは、AptioMemoriFIx.efiの代わりに再びOsxAptioFix3Drv-64.efiを使うようにしました。
- ATI RX560、580のユーザは、WhateverGreen.kextのv1.1.4とLilu.kext v1.2.1を使ってください。Vega 64とFrontier GPUはこれらは不要です
- NVIDIAのユーザは10.13 Web Driverを使ってください。
- Thunderbolt EX3 PCIe拡張カードを使用できているなら、macOSインストールの時にはThunderbolt 2ドライブを外しておきます。まだ使用できていないなら、インストール時には拡張カード自体を外しておきます。
- 最新のapfs.efiが使われていることを確認しておきます。
- sleep/wakeで問題を起こさないためにVoodooTSCSync.kextを入れておきましょう。VoodooTSCSync.kextのInfo.plistファイルの中のIOCPUNumberを書き換えておきます。
- ASUS Prime X299 Deluxで2番目のLANを使用する場合は、SmallTree-Intel-211-AT-PCIe-GBE.kextを入れるか、macOSインストール時に2番目のLANをBIOSでoffにしておきましょう。
- Lilu.kextでカーネルパニックを起こしたことがあります。最新のkext類を入れておきましょう。
D.) iMac Pro 用のmacOS 10.13 High Sierraを作る
D.1) iMac Pro EFIフォルダの準備
- EFI-X299-10.13.2-Release-iMacPro1,1-170118.zipをダウンロードしてください。この内容でEFIフォルダをデスクトップなどに作ります。
- EFI/CLOVERのconfig.plistをClover Configurator (v.4.60.0以上) で開いて、SMBIOSセクションのシリアル番号、ボードシリアル番号、SMIIODを設定します。
- VoodooTSCSync.kextをEFI/CLOVER.kexts/Other/に入れます
D.2) iMac Pro macOS High Sierra 10.13.2 (17C2120) のInstallerパッケージを作る
訳注:iMac Proにインストールされているらしい10.13.2 (17C2120)は、現在App Storeでは配布されていません。App Storeにある最新は、17C205です。17C2120をcurlコマンドでアップルのサーバから取り寄せて、インストーラパッケージを作る手順が説明されています。長いのでオリジナルを見てください。もしこれからiMacを作る場合、間も無く10.13.3が出ると思いますので、そうなったらそれを使えば良いので、この作業は不要になります。
D.3) iMac Pro macOS High Sierra 10.13.2 (17C2120) USB インストーラを作る
いつものようにcreateinstallmediaコマンドで、インストール用USBメモリを作ります。作ったUSBメモリをブート可能にするために、以下の操作をします。
cd /Volumes/USB_VOLUME mkdir .IABootFiles cd .IABootFiles cp /Volumes/USB_VOLUME/System/Library/CoreServices/boot.efi .
前のD.1節で作ったEFIフォルダを、このUSBのEFIパーティションに入れます。
D.4) iMac Pro macOS High Sierra 10.13.2 (17C2120) のクリーンインストール
Skylake-X/X299の自作システムに、17C2120をクリーンインストールします。このために、
- 新しいSSDなどを用意してHFS+でフォーマットします
- 先のD.1節で作ったEFIフォルダをそのSSDのESPに入れます
- このSSDを自作したシステムに接続し、さらにD.2節で作ったUSBメモリを入れて起動します
- ブート途中でUSBメモリを起動ドライブに指定します
- Cloverの起動画面でUSBメモリを選びます
- macOSをSSDにインストールします。
- インストール途中の再起動ではF8キーを押してUSBメモリから起動するようにし、Clover画面ではInstall macOS …を選択します。
- 次の再起動では、F8でSSDを選んで、Clover画面ではmacOS High Sierraアイコンを選びます
D.5) すでに動いている10.13 SSDを自作iMac Pro用に変換する
訳注:配布されている、iMac Pro非対応のmacOSを、iMac Pro対応にする方法が説明されています。ESP部分を、今回用意したものに差し替え、/System/Library/CoreService/PlatformSupport.plistにBoardID Mac-7BA5B2D9E42DDD94を追加します。これも10.13.3が出れば不要な作業かと思います。
D.6) iMac Pro macOS High Sierra Build Update Procedure
クリーンインストール、もしくは、iMac Pro用macOSへの変換が成功した後、10.13.2追加アップデートを当てることができます。これでビュルト番号は17C2120から17C2205になります。10.13.3 Public Beta 4へアップデートすることもできます。これらは通常のApp Storeから可能です。
訳注:もしかしたら10.13.3 Public Beta 4を使えば、そのままiMac対応High Sierraになっていたのかもしれないですね。
E.) インストール後の設定
E.1) CPU電力制御設定
訳注:電力制御を動かすための設定が説明されています。もともとXeonやXシリーズは、電力制御の設定が必要だったのですが、iMac Proのおかげで多少は楽になったようです。それでもいくつか作業が必要のようです。また、ssdtPRGen.shを使ってSSDTも作ります。
E.2) グラフィックス
- RX 560, RX 580はWhateverGreen.kext v1.1.4とLilu.kext v1.2.1.の組み合わせで使うことができます。
- Vega64とFrontierは10.13でそのままサポートされていますのでWhateverGreen.kextやLilu.kextは不要です。
- NVIDIAのカードもWeb Driverでサポートされています。17C2120や17C2205が動くバージョンのWeb Driverも配布されています。10.13.3 Public Beta 4を使う場合は、パッチを当てます。(訳注:この後パッチの方法が説明されています。)
- NVIDIAのブラックスクリーンを回避するには、NvidiaGraphicsFixup.kext v.1.2.1とLilu.kextを使います。10.13.3 Public Beta 4の場合は、NVDAStartupWeb.kextへのパッチが必要です。
E.3) オーディオ
- オーディオはAppleALC.kext v1.2.1.とLilu.kext v.1.2.1で対応できます。ただしconfig.plistでDSDTにパッチを当てる必要があります。またAudio IDの設定も必要です。
- VoodooHDA.kext 2.9.0.d10も使えます。が、VoodooHDA.kextのInfo.plistを書き換える必要があります
- AppleHDA.kextにパッチを当てることもできます。ただ、これはシステムがバニラでなくなってしまいます。
E.4) USB の設定
10.13.2追加アップデートから、X299マザーボードの全ての外部・内部USB 3.1 Gen 1 とUSB 2.0 Gen 1が仕様通りのスピードで動くようになりました。また、全ての外部・内部USB 3.1 Gen 2ポートも140 MB/sで動きます。
E.5) ASUS Prime X299 Deluxe Thunderbolt EX3 PCIeカードを使う
Thunderboltカードを使うためには、残念ながらWindowsもインストールする必要があります。Windowsでカードが認識されて初期化されて、初めて、BIOSでThunderboltの設定ができるようになります。そこで、Windowsを起動できるようにインストールして、付録のThunderbolt EX3 DVDからドライバをインストールします。この後、BIOSからカードを設定します。
E.6) NVMe の互換性
10.13からSamsung EVO 960 M.2 NVMe SSDのような市販のSSDがネイティブに使えるようになりました。10.12で必要だったパッチは全て不要になりました。
E.7.) SSD TRIM Support
TRIM機能はアップル純正SSDでしかonになりません。そこで、IOAHCIBlockStorage.kextにconfig.plistでパッチを当てます。それでTRIMが有効になります。
Name* Find*[HEX] Replace*[HEX] Comment MatchOS IOAHCIBlockStorage 4150504c 45205353 4400 00000000 00000000 0000 Trim Enabler 10.12.x,10.13.x
E.8) ASUS Prime X299 Deluxe のEthernet
このマザーボードには、Intel I1219-VとIntel I211_ATの二つのEthernet端子がついています。前者は、Hackintoshで以前からサポートされていました。後者も、SmallTree-Intel-211-AT-PCIe-GBE.kextのおかげで使用できるようになりました。
E.9) ASUS Prime X299 Deluxe PCI Device Implementation
全てのPCIデバイスを正しくインストールするために、適切なACPI DSDT置き換えパッチテーブルと、SSDT-X299.amlが必要です。ASUS Prime X299 Deluxeのためにどちらも用意されています。添付したconfig.plistに含めてあります。
E.10) 「このMacについて」のCPU表示
見た目だけの問題ですが、何もしないと、Processorの表示がUnknownになっています。これは
/System/Library/PrivateFrameworks/AppleSystemInfo.framework/Versions/A/Resources/English.lproj/AppleSystemInfo.strings
を書き換え、config.plistのCPUセクションのTypeをUnknownに設定すると修正できます。
E.11) Logic-X などのAudioソフトウェア機能
MSR 0xE2レジスタのロックを外したことで、macOSのKernelが全て電力制御を担当することになり、以前のLogic-Xやその他のオーディオソフトウェアの問題が解決されました。それでも、Logic-Xで設定しなければならない項目があります。(訳注:これらのアプリのことがよくわかってません。すみません。)
F.) ベンチマーク
- GeekbenchのCPUベンチマークはMulti-coreが65,348, Single-coreが5,910です。
- CinebenchのCPUベンチマークは4,618 CBです。
- GeekbenchのOpenGLは229,965です。
- GeekbenchのMetal2は242,393です。
- Unigine Heaven Benchmark 4.0はFPS: 76.6, Score 1929
- Unigine Valley Benchmark 1.0はFPS: 58.2, Score 2435