140 likes | 272 Views
Background Optimization in Full System Binary Translation Roman Sokolov Alexander Ermolovich MCST Intel
E N D
Background Optimization in Full System Binary Translation Roman Sokolov Alexander Ermolovich MCST Intel Presentation for 5th Spring/Summer Young Researchers‘ Colloquium on Software Engineering (SYRCoSE), May 12-13, 2011
Elbrus Binary Translation Technology for IA-32 Compatibility Full system binary translation Application-level binary translation IA-32 Applications Native Applications IA-32 Applications IA-32 BIOS, OS & Libraries App level BT Native BIOS, OS & Libraries Full System BT HW HW
Adaptive binary translation (2/2) Profile of dynamic binary translation
Background optimization Our Approach • Optimizing translation is separated in a different thread (optimization thread), that can run simultaneously with the main execution thread. • Hot regions are detected by the execution thread and are then scheduled to be optimized in background by the optimization thread. • Single-core • Optimization is interleaved with execution • Benefits • Improves application’s execution latency Dual(many)-core • Optimization is moved onto underutilized processor core • Benefits • Improves application’s execution latency • Removes overhead from the application’s execution • Enables the application of more aggressive optimizations.
Single-core background optimization (2/3) Latency improvement (CPU frequency = 300 MHz; thread time slice= 50000 cycles)
Single-core background optimization (3/3) Performance degradation
Dual-core background optimization (2/2) Performance improvement
Future works Source architecture multiprocessor system emulation IA-32 Applications IA-32 Applications IA-32 BIOS, OS & Libraries IA-32 BIOS, OS & Libraries Full System BT Full System BT Core0: Exec Core1: Opt HW Full System BT Core0: Exec Core1: Opt