コンピュータに詳しい人なら知っていると思いますが、コンピュータには「マルチスレッド」と呼ばれるものがあります。詳細は各自で調べて頂くとして、ざっくり説明すると、この機能があるとCPUの無駄をなくした効率的な処理が行えるようになります。最近のコンピュータには当たり前のように搭載されていますし、アプリケーションも当然のように対応しているので、あまり気にしたことがない人も多いかも知れません。
しかし、ふと作業中のCPUメータを見ると大した処理をしていないはずなのにレッドゾーン直前くらい高負荷になっていることがあります。あわててOSのCPUモニタを見ると20%程度。あれ?みたいな。
そんなわけで、わりと知らない人も多いPro Toolsでの分散処理の実体についてかる~く説明してみたいと思います。
他のDAWでも検証しようと思ったのですが、Studio One 2とdpにはマルチスレッド対応のCPUモニタがないため、そもそも確認できませんでした。ご了承下さいませ。
で、検証に使用するプラグインはwaves L316。手持ちのプラグインの中でダントツに重いプラグインです。
これを複数使ってCPUメータにどんな変化があるのかを検証します。ちなみにCPUメータが8本あるのは、使っているパソコンが8スレッドCPUだからです。16スレッドのCPUなら16本表示されます。
まずはオーディオトラックを作成し、そのトラックのスロットにL316を直列に5個インサートします。うちの環境ではこれでCPUを90%ほど消費しています。といってもアクティビティモニタ(OSX付属のCPUメータ)で見ると20%程度しか消費していませんが。
Pro Toolsには「同一トラックのスロットにあるプラグインは分散処理されない」という特徴があります。ですので、ここでインサートした5個のL316は分散されずに単一のスレッドで処理されていることになります。つまりマルチスレッドの恩恵はなにひとつ受けていない状態です(画面1)。CPUメータには中央の4番目のスレッドだけが極端に伸びているのがわかると思います。
ではオーディオトラックの後ろにAUXトラックを作成して、出力を「オーディオトラック→AUX1→AUX2」という具合に繋ぎます。そして5個のL316をそれぞれのトラックに2個、2個、1個という感じに分けて配置してみましょう。その時の状態がこちらです(画面.2)。
先ほど90%を越えていたCPUが48%にまで低下しています。CPUメータも4番目だけでなく、他のスレッドも動作をしているのがわかります。
更にトラックを分けて、トラック1つにつき1個のL316を使用したものがこちら(画面.3)
なんとCPU負荷が25%!しっかりとマルチスレッド処理の恩恵を受けていますね。
このように、まったく同じ処理であってもルーティングの仕方によって負荷が変わってくるのがご覧頂けましたでしょうか?複雑なことはやっていないはずなのにCPUパワー不足でエラーが出る、という方はAUXトラックをうまく利用して処理を分散させてみて下さい。



