Complete comprehension of loop codes is desirable for a variety of program optimizations. Compilers perform static transforms and analyses, such as loop tiling or memory partitioning, by construct-ing and manipulating formal representations of the source code. Runtime systems observe and characterize application behavior to drive resource management and allocation, including dependence detection and parallelization, or scheduling. However, the source code of target applications is not always available to the compiler or runtime system in an analyzable form. It becomes necessary to find alternate ways to model application behavior. This paper presents a novel mathematical framework to rebuild loops from their memory access trace. An explorat...
Memory access tracing is a program analysis technique with many different applications, ranging from...
We present a method of compressing long traces by discovering invariants for loops it has iterated t...
Over the past decade, microprocessor design strategies have focused on increasing the computational ...
This is a post-peer-review, pre-copyedit version of an article published in IEEE Transactions on Com...
A formal, high-level representation of programs is typically needed for static and dynamic analyses ...
International audienceThis paper deals with the binary analysis of executable programs, with the goa...
Abstract. Memory traces record the addresses touched by a program during its execution, enabling man...
Runtime information extraction is usually achieved using some code instrumentations, where additiona...
The doubling of cores every two years requires programmers to expose maximum parallelism. Applicatio...
Over the past 20 years, increases in processor speed have dramatically outstripped performance incre...
In today’s embedded applications a significant portion of energy is spent in the memory subsystem. S...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/18...
The advent of data proliferation and electronic devices gets low execution time and energy consumpti...
Abstract. For good performance of every computer program, good cache utiliza-tion is crucial. In num...
As computing efficiency becomes constrained by hardware scaling limitations, code optimization grows...
Memory access tracing is a program analysis technique with many different applications, ranging from...
We present a method of compressing long traces by discovering invariants for loops it has iterated t...
Over the past decade, microprocessor design strategies have focused on increasing the computational ...
This is a post-peer-review, pre-copyedit version of an article published in IEEE Transactions on Com...
A formal, high-level representation of programs is typically needed for static and dynamic analyses ...
International audienceThis paper deals with the binary analysis of executable programs, with the goa...
Abstract. Memory traces record the addresses touched by a program during its execution, enabling man...
Runtime information extraction is usually achieved using some code instrumentations, where additiona...
The doubling of cores every two years requires programmers to expose maximum parallelism. Applicatio...
Over the past 20 years, increases in processor speed have dramatically outstripped performance incre...
In today’s embedded applications a significant portion of energy is spent in the memory subsystem. S...
This work was also published as a Rice University thesis/dissertation: http://hdl.handle.net/1911/18...
The advent of data proliferation and electronic devices gets low execution time and energy consumpti...
Abstract. For good performance of every computer program, good cache utiliza-tion is crucial. In num...
As computing efficiency becomes constrained by hardware scaling limitations, code optimization grows...
Memory access tracing is a program analysis technique with many different applications, ranging from...
We present a method of compressing long traces by discovering invariants for loops it has iterated t...
Over the past decade, microprocessor design strategies have focused on increasing the computational ...