マルチコアCPUの処理

このガイドでは、Ableton Live の CPU コア、トラック ルーティング、スレッド、クロック速度、オーディオシグナルフローに関する疑問に答え、正しい理解に基づいたパフォーマンスの最適化について説明します。

処理のボトルネックを回避するために、セットを特定の方法でルーティングする必要がありますか?
Live のパフォーマンスを最適化するにはどうすればよいですか?
グループトラックを使用するとパフォーマンスに悪影響がありますか?
スレッドとコアとは何ですか?
Live は高性能コアと高効率コアのどちらを使用していますか?
トラックが 1 つしかないセットで CPU 負荷が高くなるのはなぜですか?
CPU 速度とコア数のどちらがより重要ですか?


処理のボトルネックを回避するために、セットを特定の方法でルーティングする必要がありますか?

Ableton Live のルーティングを想定される用途で使用する場合、「ボトルネックを回避する」必要はありません。 理由は以下の通りです。

  • Live は、可能な場合は常に、個別の独立したシグナルパスを同時に 並列に 処理します (2 つのオーディオ トラックをMainトラックのみにルーティングする場合など)。
  • 同じシグナルパスのすべてのオーディオは、そのパスのステップが 1 つのトラック、複数のトラック、グループ化されたトラック内、またはサイドチェーン ルーティングを介して発生するかどうかに関係なく、時系列順に 連続して 処理される必要があります。
  • ルーティングのタイプは、各シグナルパスのすべてのステップが処理される順番には影響しません。Live は、各ステップが可能な限り迅速に完了するように自動的にスケジュールを処理します。
  • Live は、並行して処理可能なオーディオ パスの独立したセグメントを個別のスレッドに割り当てるため、オペレーティング システムはこれらのセグメントを利用可能なハードウェア コア全体に分散できます。 スレッドやコアの使用を管理するために、トラック ルーティングを手動で再配置する必要はありません。

スレッドとは何ですか?
スレッドは、CPU コアによって実行される一連の命令です。 以下の図は、Live が信号パスを並列処理できる場合と、依存関係により直列処理が必要な場合を示しています。

重要な概念: クリティカルパス

クリティカル パスは、計算に最も時間のかかる完結したシグナルパスであり、現在の処理能力の制限要因です。 下の図では、クリティカル パスが太い赤線で示されています。 エフェクト A + エフェクト C が合計で必要とする処理能力は Live の CPU メーターに反映される可能性があります。その一方、A、B、D は並行して処理される可能性があり、これはコンピューターの アクティビティ モニター / タスク マネージャー で確認できます。 C は、A と B の両方のオーディオが到達した場合にのみ処理できます。

Diagram shows the critical path of an audio signal via Audio Effect A, through Audio Effect C, to the Main Track.

重要な概念: サミングポイント

マルチコア プロセッサのコアとスレッドを一度にいくつ使用できますか?
Live は、Mac と Windows でのオーディオ処理に最大 64 個のコアをサポートしています。 これにより、小さな処理のボトルネックが発生する可能性がありますが、これはリアルタイム オーディオにおいて回避できない側面であり、巧みなルーティングで「修正」できるものではありません。 サミングポイントまでのシグナルパスの独立したセグメントと、サミングポイントに続くセグメントは、並列に処理できます。

ChronologicalPaths2.png


Live のパフォーマンスを最適化するにはどうすればいいですか?

  • 重いプラグインのインスタンスが複数回実行されるのを避けるため、 センド リターン を使用してください。
  • コンピューターの処理限界を超えているときは、トラックをフリーズまたはバウンスします。
  • 並列処理が不可能な「待機ポイント」があるため、シングルコアのパフォーマンス (クロック速度) は、ハードウェア コアの数と同じくらい重要です。
  • macOS および Windows でのCPU負荷の軽減については、各ページをご確認ください。

グループ トラックを使用するとパフォーマンスに悪影響がありますか?

グループ トラックの処理は、Live の他のトラックと同様に、時系列順序とスレッド優先順位に従います。

  • グループ トラック 内にまとめられたトラックは並列に処理され、グループ (またはサミングトラック) への最終的なルーティングだけが順序に従って実行されます。
  • 1 つのトラックを別のトラックにルーティングすると、それらの 2 つのトラックは (並列ではなく) 連続して処理されるようになりますが、ルーティング先を共有してもすべてが 1 つのコアに配置されるわけではありません。
  • センドはセンドトラックとリターンの間でのシリアル処理を強制しますが、複数のセンドが同じリターンに送らていることで余分な CPU ボトルネックが発生することはありません。

グループ トラックの代わりにサミングトラックを使用しても、CPU の利点はありません。パフォーマンスは同じです。


スレッドとコアとは何ですか?

スレッドは、CPU コアが処理できる定義済みのタスクです。 アプリケーションは作業を複数のスレッドに分割し、複数のコアで作業を並行して実行できるようになります。 たとえば、Web ブラウザでは、ページの表示、スクリプトの実行、ビデオのストリーミングに別々のスレッドが使用される場合があります。 ゲームでは、グラフィック、サウンド、物理演算、AI に異なるスレッドが使用される場合があります。 オペレーティング システムは、スムーズな動作を継続するため、バックグラウンド スレッドを継続的に実行します。

単一のスレッドは、短期間実行される場合もあれば、他のスレッドも実行できるように定期的に一時停止しながら長期間実行される場合もあります。 通常、スレッドは互いに独立して実行されますが、 場合によっては、割り当てられたタスクを続行するために、あるスレッドが別のスレッドからの情報を待機しなければならないことがあります。

Live のスレッドは何で構成されますか?

Live では、スレッドは通常、単一のオーディオシグナルパス セグメントを処理します。たとえば、オーディオ クリップがエフェクトを介して処理され、その後メイン トラックにルーティングされる流れがそれにあたります。

マルチスレッドとは何ですか?

マルチスレッドとは、ソフトウェアまたはオペレーティング システムがタスクを複数のスレッドとコアに分散する機能を指します。 Live はマルチスレッドをサポートしており、これを使用してオーディオ パフォーマンスを向上させます。

一部の Windows CPU は、ハイパースレッディング (Intel) または同時マルチスレッディング (SMT) (AMD) をサポートしています。 これにより、単一の物理コアが 2 つの命令スレッドを同時に処理できるようになり、一部のワークロードの効率が向上します。 Live は、ハイパースレッディングをサポートするシステムでハイパースレッディングを自動的に有効にします。

マルチコアCPUとは何ですか?

マルチコア CPU は、単一の物理チップ内に 2 つ以上の独立した処理ユニット (コア) を含むコンピューター プロセッサです。 各コアは命令を個別に実行できるため、複数のタスクを同時に処理できます。

最新のプロセッサにはマルチコア プロセッサが搭載されており、Live 10 以降、Ableton Live にはマルチコア プロセッサが必要です。 一部の CPU は、2 つの異なるタイプのコアを組み合わせたハイブリッド アーキテクチャを備えています。

  • パフォーマンス コア (P コア): ゲームなどのタスクを処理するために最高の速度と応答性を実現するように設計されています。

  • 効率コア (E コア): 電力効率を重視して設計されており、バッテリー寿命とエネルギー使用を最適化しながらバックグラウンド タスクを処理します。

Live はオーディオ処理に最大 64 個のコアをサポートし、利用可能なコア全体にオーディオ計算を分散するために最大 64 個のスレッドを利用できます。


Live はパフォーマンス コアと効率コアのどちらを使用しますか?

Ableton Live はライブ パフォーマンス用に最適化されているため、パフォーマンス コアがある場合、パフォーマンス コアでのみオーディオを処理します。 これは、パフォーマンス コアの動作がパフォーマンスを優先するため、効率コアの動作よりも信頼性が高く予測可能であるためです。 これにより、消費電力の削減を優先することなく、同じプロセスを確実に繰り返すことができ、パフォーマンス コアと効率コア間の切り替え作業によって発生するオーディオの不具合を防止できます。

効率コアを強制的に使用することはできますか?

パフォーマンス コアと効率コアの両方を使用して Live のコア処理を以前の状態に戻すオプションは、macOS と Windows で利用できます。詳細は こちらのページ をご確認ください。

トラックが 1 つしかないセットで CPU 負荷が高くなるのはなぜですか?

たとえ 1 つのトラックであっても、そのトラックにプロセッサを大量に消費するインストゥルメントや、要求の厳しいエフェクトの長いチェーンが含まれている場合、CPU メーターは高い値を示すことがあります。

注意: Live の CPU メーターは、Live によって使用されているコンピューターの合計 CPU 容量の割合を測定するものではありません。

CPUメーターはオーディオの処理期限までどれだけの余裕があるかを測定します。 つまり、現在のオーディオ信号の処理に必要な時間と、その信号がスピーカーにオーディオとして到着するまでに残っている時間を比較します 。 音声処理が、サウンドを再生する必要があるタイミングよりも遅く終了した場合 (メーターが100 パーセントを超える場合)、音声がドロップアウトします。

上記 で説明したように、トラックとスレッドの関係は「トラックごとに 1 つのスレッド」ほど単純ではありません。プロセッサに負荷のかかるエフェクトのチェーンを同じトラックに追加すると、Live の処理がオーディオの期限に間に合わず、ドロップアウトが発生する可能性があります。これは、CPU 全体が限界に達したためではなく、特定のシグナルパスを複数のコア間で並列化できなかったために発生します。


CPUの速度とコア数のどちらがより重要ですか?

CPU クロック速度とコア数はどちらも、複雑なタスクを迅速に実行するコンピューターの能力に影響します。

クロック速度が速いほど、 プロセッサは単一のタスクをより高速に処理できます。 これは、エフェクトがリアルタイムで実行される主要なオーディオ トラックなど、1 つの重要な完全なシグナルパスにプロジェクトが大きく依存している場合に特に重要です。

コア数が多い 場合、マルチタスクをサポートし、多数のトラックを持つ大規模で複雑なプロジェクトの効率的な処理を実現します。

例: 下の図に示すように、4 つのスレッド (並列実行可能な 4 つのタスク) があるとします。 CPU にコアが 2 つしかない場合(かつハイパースレッディングを行わない場合)は、一度に実行できるスレッドは2つだけです。 残りの2つのスレッドは待機しなければなりません。 すべてのスレッドに同じ時間がかかる場合、このジョブには4つのコアを持つCPUで処理するより倍の時間がかかります。 このため、並列処理は、スレッドを実行するために使用できるコアの数が多いほど有用になります。

WindowsMacOSScheduler.png

  • Windows (Intel/AMD) : 多くの CPU では、ハイパースレッディング(Intel)または SMT (AMD)と呼ばれるテクノロジーを使用して、各コアで同時に 2 つのスレッドを実行できます。 たとえば、4コアCPUは8つの「仮想コア」として表示される場合があります。一部の新しいIntel CPU(第12世代Alder Lake以降)には、パフォーマンス(P)コアと効率(E)コアが含まれています。
  • macOS (Intel) : Intel Mac は、手動で無効にしない限り、ハイパースレッディングをサポートします。 Mac で使用されているほとんどの Intel CPU にはパフォーマンス コアしかありませんが、第 12 世代 (Alder Lake) で、Intel は P コアと E コアも導入しました。
  • macOS (Apple Silicon) : Apple Silicon CPU はハイパースレッディングを使用しません。 代わりに、高性能 (P) コア (負荷の高いタスク用) と高効率 (E) コア (バックグラウンドおよび低電力タスク用) を組み合わせています。

可能な限り多くのコアを備えた、可能な限り高速なプロセッサを選択することをお勧めします。 これにより、単純な Live プロジェクトと複雑な Live プロジェクトの両方で優れたパフォーマンスが保証されます。 Ableton サポートでは、特定のコンピューターやプロセッサーを推奨することはできませんが、ユーザー フォーラムやコンピューターまたはプロオーディオの販売店から、Live ユーザーにとって最適なものを知ることができます。


他の DAW のパフォーマンスが Ableton Live と異なるのはなぜですか?

さまざまな DAW は、さまざまなワークフローを優先するように設計されています。 処理能力を最大限に高めるために、1 つのトラック上の単一の時系列信号パスでもエフェクトを並列処理できるように DAW を設計することが可能です。 ただし、これにより、レイテンシーの増加と応答性の低下が起こります。 Live は楽器のように「ライブ」で演奏できるように設計されているため、応答性が優先されます。 スタジオ環境では、ミキシングとマスタリングでの遅い応答が許容される場合があるため、スタジオ環境での多数のトラックと処理負荷を最適化するように設計された DAW とはパフォーマンスが異なる可能性があります。 限界値を測定するベンチマークテストは、プロジェクトの全体的な構造とパフォーマンスの優先順位を考慮して評価した場合にのみ、有用な洞察を提供します。

Abletonでは、以下の学習リソースと詳細なヘルプが提供されています。:

この記事は役に立ちましたか?