低遅延カーネルのないLinux音楽制作ワークフロー

低遅延カーネルのないLinux音楽制作ワークフロー

私はLinux Mintコンピュータで音楽を作りたいのですが、低遅延カーネルをインストールして使用しようとすると不安定です(Nvidia独自のグラフィックドライバとの競合によりシステムがハングする可能性があります)。だから私の心の中には3つの選択肢があります。

  1. 一般的な汎用カーネルである現在のシステムを使用してください。
  2. Ubuntustudioなどの専用オーディオディストリビューションをインストールしてください。
  3. 現在、システムにレイテンシの短いカーネルをインストールしましたが、グラフィックカードを無効にしました。

オプション2には再分割などが含まれているため、これを避けたいのに対し、オプション3はやや見苦しくて退屈です。もしそうなら、オプション1を選択すると、音楽制作に低遅延コアを使用しないことで何が欠けているのか気になります。 (通常はLinuxツールチェーン、特にLinuxツールチェーン)?

音楽制作に汎用コアを使用することを選択した場合、低遅延コアはどのような副作用と問題を解決する必要がありますか? JACKを効果的に使用できませんか?録音できますか?録音が遅れますか?騒音/ジャンプ/悲鳴?ピアノキーボードを介したMIDI入力の精度は影響を受けますか?


PS。質問は〜です。music.SEでクロスポストコメントによれば、このフォーラムはより適切かもしれません。私は音楽制作のためのLinuxワークフローがこのフォーラムのテーマに適しているかどうかについての人々の意見を聞きたいと思います。

ベストアンサー1

ご質問は不明ですが、今後より良い質問をさせていただきますよう、説明とともにご回答いたします。後でこの問題を別の問題に切り替えないことが合理的だと思います。

コアは、low-latency低レイテンシで割り込みと短いタスクを処理できます。 Ubuntuは実際のライブカーネルパッチを使用しませんが、いわゆるPREEMPT設定を使用します。PREEMPTサポートがないと、カーネルが特定のシステムコールを実行し始めると、ハードウェア要求(MIDIコマンドなど)が入っても中断されないという考えがあります。必要に応じてシステムコールがPREEMPT中断されます。

システムコールを中断できない通常のカーネルを実行している場合、取得できる最大待ち時間はシステムコールの最大長です。どのシステムのプロセスが作成します。したがって、待ち時間に関する情報を推定することはより困難になり、一般的な解決策はより大きなバッファを使用することです。これにより、オーディオ処理の待ち時間が長くなるのは当然です。

プリエンプションを可能にするために必要なカーネル機能は、CPU使用率全体にわずかなオーバーヘッド(おそらく0〜2%)を引き起こすため、汎用カーネルでは有効になりません。また、プリエンプションはカーネルに不明なプログラミングエラーを引き起こす可能性が高くなります。これはシステムコールを中断する可能性がありますカーネルコードが正しく書かれていません。そのコードが中断されない場合にのみ誤って動作する可能性があります(たとえば、システムコールが中断されないと、実際に共有できない一部の共有構造のメモリロックを取得できませんが、システム呼び出しが中断された場合、共有構造は次のようになります。タスクを実行できます。同時に、複数のCPUコアによって修正および中断される可能性があります。)

NVIDIAドライバの現在の状況はわかりませんが、たとえばVirtualBoxカーネルドライバは、過去にこれらのドライバの多くのバグのために待ち時間が短いカーネルに大きな問題がありました。 VirtualBoxカーネルドライバはlow-latency最近カーネルでうまく機能しているようです。何年も何の問題も見たことがありません。

破損したデバイスドライバがなく、遅延時間の短いハードウェア割り込み処理が必要な場合は、常に遅延時間の短いカーネルを使用することをお勧めします。

安価なUSB接続マイクがあり、オーディオ出力にマザーボード統合サウンドカードを使用しています。十分です。 10ミリ秒未満に設定します。より良いハードウェアを使用すると、特にJACKを使用するときの遅延時間を2ミリ秒未満に短縮できます。

簡単に言うと:待ち時間の短いコアは、すべてのタスクの待機時間を短縮しますが、CPU使用率はわずかに増加します。コアがない場合、low-latency受信データの最大レイテンシは次のように異なります。システム全体の最大システムコール待機時間。バックグラウンドプロセスに注意しないと、音が突然飛び出したり、MIDIの動作がランダムに遅れたりする可能性があります。カーネルでは、low-latencyメモリが不足していない限り、バックグラウンド操作は重要ではありません。高性能コンピューティング(HPC)を実行したり暗号通貨を採掘したりしない限り、通常はすべてのレイテンシが最大CPUスループットよりも低くなるため、レイテンシの短いコアを使用しない唯一の理由は誤ったデバイスドライバである必要があります。

遅延時間の短いコアでオーディオスキップまたは遅延の問題が発生した場合は、オープンソースのGPUドライバ(NVIDIA GPU用のNouveauドライバ)でテストして問題が消えた場合は、問題を発見しました。

私は約10年間、私のすべてのシステムで遅延時間の短いカーネルを実行してきましたが、汎用カーネルよりはるかに満足しています。

そしてメモリクロックを確認してください。待ち時間が短いコアがマザーボードの電力要件を高める可能性があります。 。一種のランダム不安定。他の作業中は、バックグラウンドでRAMの50%以上を試してみてくださいmprime。ストレステストモードで実行します。エラーが検出された場合、RAMは正常に動作しないため、低レイテンシまたは汎用コアが必要な場合は使用しないでください。安定したシステム。ユニバーサルカーネルはハードウェア要件が低く、不良メモリで発生するバグも少なくなります。しかし、心配しないでください。汎用カーネルを使用しても、遅かれ早かれ問題が発生する可能性があります。

おすすめ記事