PCオーディオとMMCSS

 オーディオに特化したPCの設定を考えてみます。
 PCの電源をスイッチングから、シリーズにする、ハードディスクをSSDに換装する、各種ボードの冷却ファンの電源を外部から得る等々、力技による方法が主流で、これも極めて重要ですが、ここでは、ハードに手を加えずして、音楽再生環境のオプティマイズについて考えて見ます。

PCをオーディオ環境で、使用する場合の最低限配慮すべき点をあげて見ます。
1.メール、Webブラーザーは使わない、又、サービスを停止する。
  但し、WindowsUpdate、ドライバーの更新等、保守時は除く。
2.ASIO以外のサウンド、ビデオ機能を無効化する。
3.ブラーザーを停止した事を条件に、ウイルス・ワクチンソフトを停止する。
4.Microsoft Windows Updateを自動からマニュアル起動に変更する。
5.リモート・ディスクトップで、マウス、キィーボードによるインターラプトを減らす。
6.タイム・イニシエートで動作する保守系のソフトを停止する。
7.MMCSS(Multimedia Class Scheduler Service)を有効にする。
8.仮想メモリーを無くして、メモリー不足時のステージング機能を停止する。

そこでMMCSSの効果について考えて見ます。
MMCSSについては、マイクロソフト社から以下の様に情報開示があります。
URL: Multimedia Class Scheduler Service

 Windowsの基本的な処理は、CPUコアー#0で行います。それに対して、音楽再生ソフト等、アプリケーションは、#0がビジーな時は、#1、#2、#3と順番に処理をシフトする事により、特定のCPUコアーに負荷が集中しないように分散して、スループットの向上が図られます。
 そこで、対策としては、音楽再生に関する処理は、逆にCPUコアー#0から限りなく離れたCPUで処理して、可能な限りインタラプトの機会が少ないCPUで処理する事が望ましいと言えます。
 実は、その方法を実現する為に、MMCSSの設定が存在するのです。
 これにより、CPUコアのユーティライゼーションの平準化と、インターラプト頻度の低減が実現します。

 対処の結果、肝心の音は、音場感が増して、スッキリした音になります。
 これは、クロックの確度を向上して、低位相雑音の環境が実現した時と似た現象に思えます。
 
●foobar2000で、処理の優先順位の指定でMMCSSに関する項目があります。
MMCSS.jpg

●FirefaceのUSB SettingsにEnable MMCSS for ASIOという項目があります。
 この機能を有効にすると、高負荷環境時でもサウンド処理が優先されます。
USB.jpg

 上記の様にRMEのASIOドライバーでMMCSSを指定すると、ASIOがCPU#1で稼働します。又、foobar2000でMMCSSを指定する事により、foobar2000もCPU#3で稼働します。これにより、サウンド機能が安定して稼働する環境が整います。
 以下がその実例です。
asio.jpg

●ASIOとWASAPI環境
 WASAPIに関する定義で、High worker Process Priortyという項目がありますが、ASIOの場合この項目にレ点を入れるとWindowsのオーバヘッドが増えて、ASIOのバッファリングが上手く行きません。
 この項目は必要性が無い限りOnとしない方が幸せになります。
 WASAPING.jpg

●設定項目の基本
 設定して効果が見られない場合は、必ず基に戻して下さい。
 必要で無い時は、基本的にオリジナルのまま、これが原則です。 

コメントの投稿

非公開コメント

No title

 なるほどよく調べられていますね。今はWinは使っていないのですが、友人にも教えてあげます。

Re: No title

ケンさん おはようございます。
コメントありがとうございます。
PCは、無駄な割り込みを減らすと、RASが向上して音が、良くなるようです。