Edinburgh Research Archive

Speeding up dynamic compilation: concurrent and parallel dynamic compilation

dc.contributor.advisor
Franke, Bjorn
en
dc.contributor.advisor
Topham, Nigel
en
dc.contributor.author
Bohm, Igor
en
dc.contributor.sponsor
Engineering and Physical Sciences Research Council (EPSRC)
en
dc.date.accessioned
2013-06-21T14:49:11Z
dc.date.available
2013-06-21T14:49:11Z
dc.date.issued
2013-07-02
dc.description.abstract
The main challenge faced by a dynamic compilation system is to detect and translate frequently executed program regions into highly efficient native code as fast as possible. To efficiently reduce dynamic compilation latency, a dynamic compilation system must improve its workload throughput, i.e. compile more application hotspots per time. As time for dynamic compilation adds to the overall execution time, the dynamic compiler is often decoupled and operates in a separate thread independent from the main execution loop to reduce the overhead of dynamic compilation. This thesis proposes innovative techniques aimed at effectively speeding up dynamic compilation. The first contribution is a generalised region recording scheme optimised for program representations that require dynamic code discovery (e.g. binary program representations). The second contribution reduces dynamic compilation cost by incrementally compiling several hot regions in a concurrent and parallel task farm. Altogether the combination of generalised light-weight code discovery, large translation units, dynamic work scheduling, and concurrent and parallel dynamic compilation ensures timely and efficient processing of compilation workloads. Compared to state-of-the-art dynamic compilation approaches, speedups of up to 2.08 are demonstrated for industry standard benchmarks such as BioPerf, Spec Cpu 2006, and Eembc. Next, innovative applications of the proposed dynamic compilation scheme to speed up architectural and micro-architectural performance modelling are demonstrated. The main contribution in this context is to exploit runtime information to dynamically generate optimised code that accurately models architectural and micro-architectural components. Consequently, compilation units are larger and more complex resulting in increased compilation latencies. Large and complex compilation units present an ideal use case for our concurrent and parallel dynamic compilation infrastructure. We demonstrate that our novel micro-architectural performance modelling is faster than state-of-the-art Fpga-based simulation, whilst providing the same level of accuracy.
en
dc.identifier.uri
http://hdl.handle.net/1842/6694
dc.language.iso
en
dc.publisher
The University of Edinburgh
en
dc.relation.hasversion
I.Bohm, T.E. von Koch, S.C.Kyle, B.Franke, and N.Topham, "Generalized Just-in-Time Trace Compilation using a Parallel Task Farm in a Dynamic Binary Translator," in Proceedings of the Conference on Programming Language Design and Implementation (PLDI'11), 2011.
en
dc.relation.hasversion
S.Kyle, I.Bohm, B.Franke, H.Leather, and N.Topham, "Efficiently Parallelizing Instruction Set Simulation of Embedded Multi-Core Processors using Region-based Just-in-Time Dynamic Binary Translation," in Proceedings of the International Conference on Languages, Compilers, Tools and Theory for Embedded Systems (LCTES'12), 2012.
en
dc.relation.hasversion
O.Almer, I.Bohm, T.E. von Koch, B.Franke, S.Kyle, V.Seeker, C. Thompson, and N.Topham, "Scalable Multi-Core Simulation using Parallel Dynamic Binary Translation," in International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS'11), 2011.
en
dc.relation.hasversion
I.Bohm, B.Franke, and N.Topham, "Cycle-Accurate Performance Modelling in an Ultra-fast Just-in-Time Dynamic Binary Translation Instruction Set Simulator," in International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS'10), 2010.
en
dc.relation.hasversion
I.Bohm, B.Franke, and N.Topham, "Cycle-Accurate Performance Modelling in an Ultra-Fast Just-In-Time Dynamic Binary Translation Instruction Set Simulator," in Transactions on High-Performance Embedded Architectures and Compilers (HiPEAC'11), vol. 5, no. 4, 2011.
en
dc.subject
dynamic compilation
en
dc.title
Speeding up dynamic compilation: concurrent and parallel dynamic compilation
en
dc.type
Thesis or Dissertation
en
dc.type.qualificationlevel
Doctoral
en
dc.type.qualificationname
PhD Doctor of Philosophy
en

Files

Original bundle

Now showing 1 - 1 of 1
Name:
Bohm2013.pdf
Size:
3 MB
Format:
Adobe Portable Document Format

This item appears in the following Collection(s)