最も遅いCPU命令を競うx86実験プロジェクト
मूल शीर्षक: Assembly Hall of Shame
यह क्यों महत्वपूर्ण है
CPUの最低パフォーマンス限界を体系的に調査することで、セキュリティや耐障害性設計における命令レベルのボトルネック理解に貢献する。
GitHubユーザーxoreaxeaxeaxが「Assembly Hall of Shame」を公開。x86命令の中で最も低いパフォーマンスを記録する命令を探索するプロジェクトで、現在の「チャンピオン」はfxrstor64命令とされている。
「Assembly Hall of Shame」は、通常の命令レイテンシ分析が高速化を目的とするのとは逆に、単一命令で達成できる最低のパフォーマンスを追求するx86アセンブリ実験プロジェクトです。
GitHubにて公開されたこのリポジトリでは、fxrstor64、idiv、rdrand、wbinvdなど数十種類の命令についてベンチマークを実施しています。
現在の「最悪パフォーマンス王者」として選ばれているのは「fxrstor64」命令です。この手法では、fxrstor64を使用してPCIeファブリック内の高レイテンシMMIO領域から512バイトのFPU/MMX/XMM状態を読み込みます。さらに、複数の「ハンマーコア」が別の高レイテンシMMIOレジスタに対して4バイトの読み取りを繰り返すことでPCIeルートコンプレックスとエンドポイントを飽和させ、CPU 0のfxrstor64命令がすべての競合トラフィックの後ろに待機させられる状態を意図的に作り出しています。
リポジトリにはclflush、cpuid、mfence、rdtsc、split_lockなど多様な命令のテストケースが含まれており、MITライセンスのもとで公開されています。