CrossMapping: Harmonizing Memory Consistency in Cross-ISA Binary Translation
summary
CrossMapping is a framework that generates concrete fence- and RMW-mapping schemes for cross-ISA DBT, implemented on QEMU and evaluated with PARSEC. It uses specification tables to normalize ISA memory models and an FSM of Ming to insert fences only when needed across offline (guest→IR, IR→host) and online stages. Emulating x86 on ARMv8 yields a 8.5% geometric-mean speedup (up to 15.8%), and x86 on RISC-V yields 7.3% (up to 12.7%), while cutting redundant barriers and preserving correctness.
AI-written summary · about
chapters (14)
- 0:00CrossMapping project intro
- 1:01Dynamic binary translation workflow
- 1:44Memory consistency across ISAs
- 3:12Existing mapping schemes
- 5:48Limitations of prior frameworks
- 6:10CrossMapping design
- 7:17Memory mode normalization
- 9:25Specification table comparison
- 10:32FSM guest-to-IR mapping
- 12:21IR-to-host fence mapping
- 13:50Implementation setup
- 14:57Performance overhead
- 15:40Performance improvements
- 16:24Conclusion
related talks
15mKeynote: Bridging The Divide: Unifying RISC-V Through Binary Translation
01h 02mMemory and Compilers
17mEMT: An OS Framework for New Memory Translation Architectures
17mA Retargetable System-Level DBT Hypervisor
18mThe Semantics of Transactions and Weak Memory in x86, Power, ARM, and C++
17mAccelerating Shared Library Execution in a DBT
36mAccelerate RISC-V Instruction Set Simulation by Tiered JIT Compilation
01h 11mProgramming language memory models: Problems, solutions, and directions
