Ubuntu Studio
実行遅延(レイテンシ)とは、デバイスからの入力信号をコンピュータが処理し、その処理結果を帰すまでの遅延時間のことである。コンピュータのハードウェアとしての制約がその原因であり、どれほど高性能なコンピュータだろうが、どのようなデバイスを用いた操作だろうが、大なり小なりレイテンシは発生する。
製作環境においては、例えばMIDIキーボードを押して発信した信号が音声として出力されるまでの遅延時間や、ペンタブレットによる入力が画面に描画されるまでの遅延時間がこれに該当する。実行遅延の大小は製作者のパフォーマンスに直接影響するため、可能な限り短いのが望ましい。
サウンド処理に限定すると、実行遅延の短縮は、WindowsではASIOドライバ、macOSではCore Audioドライバ(Mac OS 9以前はSound Manager)などで実現している。
ではLinuxの場合はというと、カーネルがドライバを含む構造(モノリシックカーネル)となっているため、カーネル周りを調整することで対策している。具体的には以下である。
カーネルにCONFIG_PREEMPT_RTパッチを適用したリアルタイムカーネルを利用する
カーネルの設定を変更しタイマー割り込みの頻度を増やす
PAMの設定を変更し、アプリケーションのカーネル・スケジューラー内での処理の優先度を変更する
これらの設定はオーディオに限らずシステム全体に影響するため、多様な製作目的に合致したシステムを構築することが可能である。