Fedora Linux はすでに glibcHWCAP の使用をサポートしており、パフォーマンス重視のコード用にさまざまな x86_64 マイクロアーキテクチャ機能レベルに合わせてライブラリを構築できるため、AVX/AVX2 またはその他の新しい Intel/AMDC CPU 命令セット拡張機能を活用するときにパフォーマンスの見返りを達成できます。現在、Fedora42 では、この機能をさらに拡張して、バイナリ実行可能ファイルでも glibcHWCAP を利用してパフォーマンスを向上できるようにすることを提案しています。
Fedora42 は、x86_64 マイクロアーキテクチャ機能レベルに最適化されたバイナリを許可する変更提案を提出しました。その目的は、glibc-hwcaps メカニズムを共有ライブラリだけでなく完全な実行可能ファイルに拡張することです。
どのパッケージが最適化されたコードをどのレベルで提供するかは、ベンチマーク結果に基づいて個々のパッケージ管理者によって決定されます。
...
この変更は、glibc-hwcaps メカニズムを実行可能ファイルに拡張することに関するものです。小さなヘルパーバイナリを提供します。 /usr/bin (または他のパス) 内のプログラムは、このヘルパー プログラムにリンクされています。実行されると、ヘルパー プログラムは CPU の機能をチェックし、ターゲット プログラムの最適なバリアントを別のディレクトリ階層で検索します。次に、最適化されたバイナリ、またはベースライン用にコンパイルされた「ユニバーサル」バイナリを起動します。 」
提案された変更にはさらに次のものが追加されます。
他のディストリビューションではより高いレベルのマイクロアーキテクチャが使用されていることに注意してください。たとえば、RHEL9 はベースラインとして x86-64-v2 を使用し、RHEL10 は x86-64-v3 を使用し、その他のディストリビューションは最適化されたバリアント (OpenSUSE、ArchLinux、Ubuntu) を提供します。 Fedora で同じ変更を実装する方法ははるかに狭いため、開発労力、コードのコンパイル時間、ストレージとリリースのオーバーヘッドが大幅に削減されますが、パフォーマンスとエネルギー消費量は同等のメリットが得られます。 」
パフォーマンスの利点を自ら評価し、さまざまな x86_64 マイクロアーキテクチャ機能レベルに合わせて最適化された実行可能ファイルをパッケージに提供するかどうかを決定するのは、依然として Fedora パッケージ作成者/開発者次第です。