少し前のMacBook Pro環境で
動画を作ってる

  • After Effects CC 2014(Adobe Store) var 13.2.0.49
  • MacBook Pro (Retina, Mid 2012)
  • OS 10.10.3
  • HDMI接続によるデュアルディスプレイ環境 ← (ネタバレ)後々これが重要に

いつもAfter Effectsに
警告される人生

After Effects(以下AE)を起動するたびにこんな警告をうけています。
以前も解決を試みた事があるはずなんだけど、どうも上手く行かず、解決法が見つかりませんでした。
どう試行錯誤したのかの記録も、記憶ないです。こんな事ばかりの人生です。

で、諦めて、そのままCPUレイトレースで良いやと無視してきたけど、ちょっと気が向いたので、もう一度解決を試みる事にしました。

AEに怒られる図

GPUでレイトレース処理を実行するには、承認済みのNVIDIAグラフィックカードおよびCUDAバージョン5.0以上が必要です。ここでは、レイトレース処理にCPUを使用します。

CUDA5.0以降をインストールしたら、コンピュータを再起動してください。 http://www.adobe.com/go/aeraytracedgpu_jp を参照してください。

なるほど、http://www.adobe.com/go/aeraytracedgpu_jp を見れば良いのか。

URLを開くとこちらのページに転送されました。
GPU (CUDA, OpenGL) features in After Effects CS6 and After Effects CC GPU (CUDA, OpenGL) features in After Effects CS6 and After Effects

……。

……なるほど、わからん。

がんばって英語解読する前に、別口から検索すると、日本語版の解説ページが見つかりました。
Mac Book Pro で CUDA を有効にする(After Effects | Premiere Pro | Retina ディスプレイ) GPU (CUDA, OpenGL) features in After Effects CS6 and After Effects

分かる……わかるぞ!
手順に従いCUDAをバージョンアップします。

CUDAをバージョンアップ

CUDA Drivers for MAC Archive | NVIDIA のページに行き、CUDAドライバのダウンロード&インストールします。

NVIDIAのダウンロードページ インストールが終わったら一度Macを再起動。

CUDAを確認

システム環境設定を開くと、下の方にCUDAのアイコンがある。 システム環境設定

よしよし、CUDAの最新バージョンを確認できたぞ。
var5.0以上要求に対し、7.0.36、完璧だ! CUDA Preferences 張り切ってAE起動!

VRAMが足りないと
怒られる人生がはじまる

あれ?

GPU高速処理レイトレース 3Dレンダラーに、動作するために必要な空きビデオメモリ(VRAM)が不足しています。レイトレース3DレンダラーはCPUを使用します。レイトレース3DレンダラーでGPUを使用できるようにするには、他のアプリケーションを閉じてAfter Effectsを再起動してください。

VRAMは1024M。そこそこあると思うんだけどなー。 というわけで、VRAMを空ける努力を開始します。

グラフィックスの自動切り替えをオフにする

システム環境設定 > 省エネルギー設定の「グラフィックスの自動切り替え」にチェックが入っていたので、外します。 さー、どうだ!

……だめだー。

Mac再起動、一番VRAMが空いている状態に

次にMacを再起動し、VRAMが一番空いていると思われる状態で真っ先にAEを起動……と言っても、今の時点で他に立ち上げているめぼしいアプリは無いから、どうせ……。

……だめだー。

GPUが選択できるようにならない。 レイトレースが切り替わらない

GPUのメモリが不足しています。他のプログラムを閉じてください

次はNVRAMでもリセットするかな?
常駐アプリも落としまくるかねぇ。
けど、そこまでして使いたい物でもないし……。

……と、諦めかけた時。

サブモニタとの接続を切るとできた!

キーボードを打つ右手の近く、MacBookから伸びる一本の線。
その先にはキミがいた。サブモニタ君。

あれ?これを映すのもVRAM使うよな?

ほぼ確信しつつ、HDMIケーブルを抜き、AEを再起動……。

いけた!
GPUに切り替えできた!

Macはアクティビティモニタで、通常メモリの使用状況は分かるけど、ビデオメモリの使用状況を知る手段は標準では用意されていないようです。
どんな風に使われているかあまり意識した事ありませんでした。

そりゃ、サブモニタもVRAM使うよなぁ。

AE起動後にサブモニタ接続すると、そのままGPUがつかえる

なんか……動くね。うん、動く。
パフォーマンス的には分からないけど、動くね。キミ。

ただ、本当にVRAMがギリギリのようで、サブモニタを繋げていない時でも、少し別のアプリを立ち上げているだけで警告が出ます。

NVRAM(PRAM)のリセットもやってみたけど、大きな効果は感じませんでした。おまじない程度でしょうか。

そんな訳で、僕と同じような環境でCPUレイトレース人生だった人の参考になれば幸いです。