初代MacPro 2.1(2007)でAdobe CS6のMPEを動作させる。

 
注意:以下の内容は、推奨された動作環境ではないのでご利用の際は自己責任でお願いします。OSおよびソフトウェアが起動しなくなる場合もありますが、当方は一切の保証はいたしません。
Adobe CS6 Production PremiumのPremiere Proには一部のNvidia もしくはAMDグラフィックボードでアクセラレーションするマーキュリー プレイバック エンジン(以下MPE) が搭載されています。このMPEではクリップの再生処理及び一部のエフェクトが高速に処理できます。

Adobe CS6用グラフィックカード – Creative Suite 6 | NVIDIA
MacでのPremiere Pro CS6対応グラフィックボードは以下の通りです。

  • Nvidia GeForce GTX 285
  • Nvidia Quadro FX 4800
  • Nvidia Quadro 4000
  • AMD Radeon HD 6750M(特定のMacBook Proコンピューターのみ)
  • AMD Radeon HD 6770M(特定のMacBook Proコンピューターのみ)

Windows版と比べてかなり限定されています。この問題は、OSでサポートされていないグラフィックボードに起因していると思われます。Nvidiaの新しいドライバーをインストールすることでGeforce 5xx系のグラフィックボードが完全ではありませんが、動作可能になります。(OSが10.7.3以上)

NVIDIAグラフィックドライバー

NVIDIA DRIVERS 270.00.00f01
MacPro3,1 (2008)以上でないと通常のインストールはできません。MacPro初代ではパッケージを開くことでインストールが可能になります。起動時にOS側が対応していないグラフィックカードを装着した状態では画面がブラックアウトし先に進むことができないのでドライバーやOSのインストールは OSでサポートされているAMDのボードを搭載し作業した方が賢明です。
また、Nvidiaのドライバーの製品サポートリストにない製品で起動した場合、起動時のスプラッシュスクリーンは表示されません。(Optionを使った起動パーティションの変更などはできなくなります。)Quadro系は64bitが必須なのでMacPro初代で起動することはできません。

NVIDIA CUDAドライバー

MPEを動作させる場合には別途、NvidiaのCUDAドライバーが必要になります。最新のドライバーはNvidiaのディベロッパーゾーンでダウンロードすることが可能です。
CUDA Downloads | NVIDIA Developer Zone
MacPro3,1以降であれば上記のドライバーでNvidiaグラフィックカードを使用しAdobe Premiere Pro CS6 を高速に動作させることが可能になります。(Adobe CS6 Production Premiumの設定は後述)
注意:10.7.3から10.7.4にそのままアップグレードすると、この””MAGIC”ドライバーはブレイクします。OSインストール途中に再インストールするか、パッケージから手動でインストールしなければなりません。(インストール後だと画面がブラックアウトしてしまうので注意が必要です。)

さて、問題はこれからです…。

初代のMacProはカーネルが32bitでしか起動できません。 CPU自体は64bit対応なので64bitアプリケーションは動作可能ですが、カーネルが64bitでない場合アプリケーションでCUDAが無効化されます。 そのためブートプロセスのハックが必要になり、マルチブートローダーのChameleonを使用する事で64bitでの起動が可能になります。
準備が必要です。OSX起動用ディスク、Bootcamp起動用ディスク、Chameleon起動用ディスクの3つが必要です。(兼用できるかもしれませんが分けました。)あと、緊急時に起動できる回復用USBLion起動ディスクです。(販売されているUSB版Lionはそのまま使用できます。)グラフィックボードにはAMDを使用します。(1台目にグラフィックドライバーを入れた素の状態のOSXを入れておくことを推奨します。)

USB起動ディスクの作成

OSX10.7 Lionが起動できる状態でAppStoreからOSXLionをダウンロードします。アプリケーションフォルダ内に作成された「Mac OS X Lion インストール.app 」を右クリックで「パッケージの内容を表示」を選び、「InstallESD.dmg」をダブルクリックしてマウントします。 USBドライブを接続し、ディスクユーティリティで「Mac OS 拡張(ジャーナリング)」でフォーマット後マウントされたディスクを復元します。
Intel MacではブートプロセスにEFIを使用しています。一般的なWindowsのMBRマスターブートレコーダーを持つHDDから起動することはできません。 今回、ChameleonではMBRブートプロセスを使用します。BootCampを経由することでMBRブートプロセスからの起動を可能にします。一度設定をしてしまえばBootCampを迂回する必要はなくなり、PRAMをリセットすればクリアな32bit環境に戻ります。

ディスクのフォーマット

OSXのディスク、BootCampのディスクはそれぞれGUIDパーティションのMacOS拡張(ジャーナリング)でフォーマットします。Chameleonの起動ディスクはMBRパーティションのMacOS拡張(ジャーナリング)でフォーマットします。

Chameleonの起動ディスクはパーティションを2つにわけ起動部分(Boot)を1GB程度確保します。残りのパーティションはデータ交換用にexFatでフォーマットしました。

OSXのインストール

USBから起動し、OSX起動用ディスクにOSX10.7 Lionをインストールし、再起動後、上記Nvidiaドライバーをインストールしておきます。

Bootcampのインストール

OSX10.7 LionではBootcamp4.0はWindows7のみサポートされます。ここでは製品版のWindows7 64bitをインストールします。Bootcampアシスタントを使ってWindowsサポートソフトウェアをダウンロードしておきます。ドライバーソフトウェアがない場合正常に動作しないだけでなく、OSX環境に戻れない場合があります。インストール時にいくつか問題点にぶつかりました。
問題点1:Windows7 の64bit版からインストールしようとした場合、「Select CD-ROM Boot Type」と表示されインストールできない。
A.Windows7 用の Windows 自動インストール キット (AIK) をダウンロードし、DVD に書き込み、DVD から Windows AIK をインストールする必要があります。
Windows® 7 用の Windows® 自動インストール キット (AIK)
問題点2:複数のドライブがある場合ディスクをフォーマットしてもインストールできない。
A.ディスクを1台にする必要があります。MacOSXのディスクを取り外しWindowsをインストールするディスクのみを接続し再起動します。インストール後にディスクを戻します。EFI領域はそのまま残しBootcamp領域にインストールします。
インストール終了後、ダウンロードしておいたWindowsサポートソフトウェアをインストールし、BootcampコントロールパネルでOSXを起動します。

Chameleonのインストール

osx86.net からChameleonのパッケージをダウンロードします。(ダウンロードには登録が必要です。) Chameleon自体は単にブートローダーです。ごにょごにょ するために使われているようですが、ここでは詳しく述べません。
今回はChameleon-2.RCr873.pkgを使用します。最新版は頻繁に更新されているようです。

注意:Chameleonを絶対に直接OSX起動ディスクにインストールしないでください。OSXが正常に動作しなくなります。また、OSXをApple社製のハードウェア以外にインストールし、使用することはライセンスで禁じられています。

パッケージをダブルクリックし、インストール先を変更しBootディスクを選択します。パッケージにはkextが含まれているので、FakeSMC以外を選択します。余計なものは動かなくなる可能性があるので必要最低限なものだけ導入するようにした方が無難です。

インストール後いくつかのフォルダーとファイルが生成されますが、重要なのはExtraフォルダーとusr/standalone/i386の中のbootファイルです。
Extensionsフォルダー
起動に必要なkext(カーネルエクステンション)ファイルが格納されます。OSでは/System/Library/Extensions にkextが格納されていますがそれの補完をします。
Themesフォルダー
Chameleonのテーマファイルです。
org.chameleon.Boot.plist
OSでは/Library/Preferences/SystemConfiguration/com.apple.Boot.plistにあり、ブートオプションを指定します。
smbios.plist
smbios.plistでマシンの設定を行います。iMacもしくはMacPro 3.1以上に偽装することで64bit動作が可能になります。
Xcodeもしくは、Chameleon Wizardを用いることで、com.apple.Boot.plist(org.chameleon.Boot.plist)編集が行えます。
MBRにブートレコードが記録されているので、Macから直接起動することはできません。BootcampでWindowsを立ち上げ、BootcampコントロールパネルでChamereonのブートディスクを指定し、起動します。
Chameleonを使用し、64bitでカーネルが起動することを確認できてからGTX 580に換装します。64bitかどうかはターミナルで以下のコマンドで確認することができます。
ioreg -l -p IODeviceTree | grep firmware-abi
初代MacProを上記方法で64bit起動した場合、SATAポート5、6番が使用できなくなる、オンボードのオーディオが使用できなくなる、スリープから回復しなくなるなどの症状が現れます。

GTX 580を換装する

GTX 680の登場でGTX 580の値ごろ感が出てきました。CUDAコアプロセッサーが512基、グラフィッククロック772MHzプロセッサークロック1544MHz、1536 MB GDDR5メモリーを搭載しています。

初代Mac Proの場合、PCIレーンに大きな問題があります。16xレーンは最下段のみ、かつPCI Express1(2.0ではない)のため2.5Gbps動作になります。また、GTX 580には補助電源コネクターが6pin x1、8pin x1あります。初代MacProにはグラフィックボード用の電源がPCIスロット付近に6pinが2基あります。6pinが2基>8pin、4pin2基>6pinに変換します。4pinx2はDVDマルチドライブを捨てて、光学ドライブスロットから引っ張っています。
GTX 680はCUDAが 1536コア、GTX 690ではなんと 3072コア!!が搭載されています。

Adobe Premiere Pro CS6での設定

Premiere ProでのMPEの設定はメニューのプロジェクト>プロジェクト設定>一般から行います。

Adobeの動作環境にないためGTX 580に換装してもマーキュリー プレイバック エンジンはグレーアウト?したままです。

GTX 580を有効化するためにアプリケーションのAdobe Premire Pro CS6.appを右クリックしパッケージの内容を表示します。

Contentsの中にcuda_supprted_card.txtがあり、このテキストにGeForce GTX 580を追加します。

Adobe Premiere Proを起動し、プロジェクト設定でMercury Playback Engine GPUアクセラレーション(CUDA)が選択できることがわかります。

シーケンスのタイムラインが赤から黄色に変わりリアルタイムに再生することが可能になります。

Adobe After Effects CS6 での設定

After Effects CS6ではGPUの使い方が以前と少し変わっています。 主にAfter EffectsはOpenGLでアクセラレーションされ、今回CS6ではCUDAを利用したレイトレーシング3Dレンダラーが新たに追加されました。
アクセラレーションは3つの段階があるみたいです。
1.特定のカードのCUDAを利用したレイトレーシング3Dレンダラー
2.OpenGLを使用した、高速ドラフトモード、ハードウェアブリットパイプ、カートゥーンエフェクトのGPUアクセラレーション
3.OpenGLスワップバッファー
また、今バージョンからOpenGLでのレンダリングはなくなりました
現在GPUアクセラレーションによるレイトレーシング3Dレンダラーでケプラークラスのグラフィックスカード(例えば、GTX 680などWindowsも含む)は使用することができません。(開発中だそうです。)
GPU (CUDA, OpenGL) features in After Effects CS6 ? After Effects region of interest
Premiereと同様にGTX580のCUDAを有効化するためにはAdobe After Effects CS6.appを右クリックしパッケージの内容を表示します。Contents内のraytoacer_supported_cards.txtにGeForce GTX 580の記述を入れます。

設定はAfterEffects>環境設定>プレビューから行います。

GPUのCUDAを利用したアクセラレーションは64bitカーネルから起動した場合しか使用できません。互換性のないドライバーと表示され、CUDA情報はグレーアウトします。64bitで起動している場合はレイトレースからGPU、CPUの選択が可能になります。

新しいレイトレースを使用する場合はコンポジションの設定を変えなければなりません。(新しいレイトレースを使用しないと3Dテキストや湾曲などは使えません。)新規コンポジション作成時、もしくはコンポジション設定の『高度』からレンダラーをクラシック3Dからレイトレース3Dに変えます。レイトレース3Dでコンポジションを作成すると、警告が表示されます。

?この辺はまだ検証していません。現状では高速ドラフトでは表示されますが、最終画質では何も表示されません。(レンダリングも真黒です。)…でもファンは高速で回転しています。認定されていないグラフフィックカードなので仕方ないかもしれません。
※BootcampでのWindows7 64bitでは最終画質でも正常に表示されます。GPUに切り替えた時点でかなりファンが高速で回転します!騒音と、夏場の使用にはご注意ください。
AEではCUDAによってはでアクセラレートされるプラグインが数多く存在します。これらプラグインを使用する場合、Nvidiaのグラフィックカードは非常に有用です。また、グラフィックの表示にはOpenGLに最適化されたQuadroのほうが効果を発揮しそうです。

Adobe Photoshop CS6 での設定

Adobe Photoshop CS6のアクセラレーションはOpenCLで行われます。今回のテストでインストールしたドライバーではOpenCLが有効化されていません。(ドライバーの改変が必要になります。)純正のMac対応のNvidiaのカードもしくはAMDのRadeonを使用する必要があります。
グラフィックカードの設定は、メニューのPhotoshopの環境設定>パフォーマンスから行います。

グラフィックプロセッサーの設定で「グラフィックプロセッサーを使用」にチェックを入れ、詳細設定を行います。

?OpenCLに対応していないのでチェックできません。

NVIDIA MERCURY TRANSMIT PLUGIN

また、NVIDIA MERCURY TRANSMIT PLUGINでNvidiaのQuadro SDI Output cardが Adobe Premiere Pro, Encore および Prelude CS6で利用できます。(Windows7 64bitのみ)
NVIDIA MERCURY TRANSMIT PLUGIN DRIVERS 1.0.0.0
NVIDIA Quadro SDIの出力データフォーマットは常にYCrCbAの4444デュアルリンクです。エンベデッドオーディオ、外部ハウスシンクの同期、ステレオはサポートされていません。

総論

CS6のパフォーマンスを最大限に活用するには、高速のCPUと高速のNvidiaグラフィックボードが必要になります。 現行発売されているMacでグラフィックボードが換装できるのはMacProのみになり、OSでサポートされているグラフィックドライバーがほぼAMDです。MacProのCPUは一世代前になり、MacのアドバンテージであるThunderboltポートも存在しません。現状ではWindows7 64bitマシンか、MacPro+Quadro4000のいずれかがベストな選択肢になると思われます。

3 thoughts on “初代MacPro 2.1(2007)でAdobe CS6のMPEを動作させる。

  1. 南條 says:

    macpro2008でGTX480を使っています。AEで突然使えなくなって困っていたのですが、
    このブログにお書きになっているパッケージの書き換えのところで、ハタと。AEのアップデートなどで、このテキストがデフォルトになってしまうのですね。書き加えたところ、戻りました。たいへんたいへん、ありがとうございました!

@HackworkSystems へ返信する コメントをキャンセル