Janus: automatic binary analysis, instrumentation and optimisation using rewrite rules
We present an automatic binary profiling and optimisation framework to perform binary instrumentation and optimisations such as exploiting thread-level, data level, and memory-level parallelism for application binaries. A static binary analyser first examines an executable and determines the instrumentation or modification operations required, encoding them as a series of rewrite rules that a dynamic binary modifier uses to perform transformations. Rewrite rules can be lifted to a domain-specific language (DSL) so that developers can write high-level binary optimisation plugins in this framework.
In this talk, we demonstrate the performance by performing automatic parallelisation, vectorisation and software prefetching on a selection of application binaries. We also discuss our on-going work on DSL and new plugins in security and error-robustness applications.
Thu 18 JulDisplayed time zone: Belfast change
13:30 - 15:10 | |||
13:30 25mTalk | Tornado VM: A Java Virtual Machine for Exploiting High-Performance Heterogeneous Hardware AORTA Christos Kotselidis University of Manchester, UK | ||
13:55 25mTalk | Another Decade of SOM Language Implementation: Virtual Machines for Research and Teaching AORTA Stefan Marr University of Kent | ||
14:20 25mTalk | Janus: automatic binary analysis, instrumentation and optimisation using rewrite rules AORTA | ||
14:45 25mTalk | Lightweight Software Profiling of Compiled Code AORTA Andrew Craik IBM Canada |