Der Fluch der x86-Emulation: Warum ARM-CPUs mit dem TSO-Speichermodell kämpfen

The Scourge of x86 Emulation

FEX-Emu erklärt, warum die Emulation des x86-TSO-Speichermodells auf ARM so kostspielig ist. Jeder x86-Load wird zu load-acquire, jeder Store zu store-release – das bremst die Performance massiv, wie Mikrobenchmarks auf fünf CPUs zeigen. Ab ARMv8.3 verbessern LRCPC-Loads die Lage, und Apples M1 löst das Problem mit einem hardwarebasierten TSO-Modus. Der Artikel zeigt Grenzen und Auswege auf.

Diese Anweisungen wurden nie dafür entworfen, so verwendet zu werden. Acquire-Release-Semantik für jeden Load in der x86-Emulation zu nutzen, zwingt ARM-CPUs zu extrem strikten Einschränkungen, sodass die Load-Instruktionen gar nicht mehr zueinander umgeordnet werden können.

Mehr von diesem Tag

2026-09-18