予想どおり1か月前にFUTEX2パッチがロック/コアでキューに入れられたときに最初に報告した後、Linux上のWindowsゲーム体験を支援するための新しいsys_futex_waitv()システムコールでのこの作業は、実際にLinux5.16に到達します。

FUTEX2の作業は長い間行われており、Linux 5.16の着陸が主要な部分です。つまり、複数のfutexで待機できるsys_futex_waitvシステムコールです。これは、WineやProton(Steam Play)などで、MicrosoftWindowsのWaitForMultipleObjects機能の動作とのマッチングを向上させるのに非常に役立ちます。パッチがWine/Protonにリリースされたときに、Linux 5.16以降でこの新しいシステムコールを利用すると、パフォーマンスの可能性が高まります。ネイティブLinuxゲームは、パフォーマンス/効率の利点のために、このシステムコールを直接またはラッパーを介して利用することもできます(たとえば、glibcパッチがフロートされています)。パフォーマンス上の利点は、数パーセントの球場にある可能性があります。

FUTEX2には元々、可変サイズのfutex、NUMA認識、およびその他の改善が組み込まれる予定でした。しかし、その作業は今のところ押し戻され、Linuxゲームの利点のためにsys_futex_waitvをマージするだけであり、他の改善は準備ができたら後で行うことができます。

この新しいコードは、本日、この最初の日に送信されました。ロック更新の主な追加としてのLinux5.16マージウィンドウは、このサイクルを変更します。 Linusは、今後数時間以内に5.16PRの最初のバッチを取り込む必要があります。

ツリー外のプロトン/ワインパッチこのシステムコールがメインライン化されている間、パッチは短い順序でアップストリームされることを願っています。

Categories: IT Info