Tracing JIT compilation generates units of compilation that are easy to analyse and are known to execute frequently. The AJITPar project aims to investigate whether the information in JIT traces can be used to make better scheduling decisions or perform code transformations to adapt the code for a specific parallel architecture. To achieve this goal, a cost model must be developed to estimate the execution time of an individual trace. This paper presents the design and implementation of a system for extracting JIT trace information from the Pycket JIT compiler. We define three increasingly parametric cost models for Pycket traces. We perform a search of the cost model parameter space using genetic algorithms to identify the best ...
Effective dynamic virtual-machine optimization depends on quickly finding and optimizing frequently...
Effective static analyses have been proposed which infer bounds on the number of resolutions. These ...
Predicting statically the running time of programs has many applications ranging from task schedulin...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to ex...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to exe...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to exe...
Parallel programming is extremely challenging. Worse yet, parallel architectures evolve quickly, and...
Trace-based JIT compilers identify frequently executed program paths at run-time and subsequently re...
The proliferation of widely available, but very different, parallel architectures makes the ability ...
We present Pycket, a high-performance tracing JIT compiler for Racket. Pycket supports a wide variet...
The proliferation of widely available, but very different, parallel architectures makes the ability...
WCET analysis models for superscalar out-of-order CPUs generally need to be pessimistic in orde...
Execution times may be reduced by offloading parallel loop nests to a GPU. Auto-parallelizing compil...
Trace-based JIT compilers identify frequently executed pro-gram paths at run-time and subsequently r...
Event tracing of applications under dynamic execution is crucial for performance modeling, optimizat...
Effective dynamic virtual-machine optimization depends on quickly finding and optimizing frequently...
Effective static analyses have been proposed which infer bounds on the number of resolutions. These ...
Predicting statically the running time of programs has many applications ranging from task schedulin...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to ex...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to exe...
Tracing JIT compilation generates units of compilation that are easy to analyse and are known to exe...
Parallel programming is extremely challenging. Worse yet, parallel architectures evolve quickly, and...
Trace-based JIT compilers identify frequently executed program paths at run-time and subsequently re...
The proliferation of widely available, but very different, parallel architectures makes the ability ...
We present Pycket, a high-performance tracing JIT compiler for Racket. Pycket supports a wide variet...
The proliferation of widely available, but very different, parallel architectures makes the ability...
WCET analysis models for superscalar out-of-order CPUs generally need to be pessimistic in orde...
Execution times may be reduced by offloading parallel loop nests to a GPU. Auto-parallelizing compil...
Trace-based JIT compilers identify frequently executed pro-gram paths at run-time and subsequently r...
Event tracing of applications under dynamic execution is crucial for performance modeling, optimizat...
Effective dynamic virtual-machine optimization depends on quickly finding and optimizing frequently...
Effective static analyses have been proposed which infer bounds on the number of resolutions. These ...
Predicting statically the running time of programs has many applications ranging from task schedulin...