This paper presents CDTT, a compiler framework that takes C/C++ code and automatically generates a binary that eliminates dynamically redundant code without pro-grammer intervention. It does so by exploiting underlying hardware or software support for the data-triggered threads (DTT) programming and execution model. With the help of idempotence analysis and inter-procedural name depen-dence analysis, CDTT identifies potential code regions and composes support thread functions that execute as soon as live-in data changes. CDTT can also use profile data to target the elimination of redundant computation. The compiled binary running on top of a software run-time system can achieve nearly the same level of perfor-mance as careful hand-coded mod...
This thesis studies efficient runtime systems for parallelism management (multithreading) and memory...
Thesis (Ph.D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer ...
Even though chip multiprocessors have emerged as the predominant organization for future microproces...
This thesis introduces the data-triggered threads (DTT) programming and execution model. Unlike thre...
The data-triggered threads (DTT) programming and execution model can increase parallelism and elimin...
Data-centric computing becomes increasingly important because of the rapid growth of application dat...
This article investigates several source-to-source C compilers for extracting pre-execution thread c...
Until recently, a steadily rising clock rate and other uniprocessor microarchitectural improvements ...
We present a compiler algorithm called BitValue, which can discover unused and constant bits in dust...
for Pre-Execution Pre-execution is a promising latency tolerance technique that uses one or more hel...
Future computers may take advantage of a dataflow program execution model (PXM) for both performance...
The performance improvement of conventional processor has begun to stagnate in recent years. Because...
Pre-execution is a promising latency tolerance technique that uses one or more helper threads runnin...
Compiler-assisted variable size benchmarking for the study of C++ metaprogram compile times. ctbenc...
Speculative multithreading $(SpMT)$ promises to be an effective mechanism for parallelizing non-nume...
This thesis studies efficient runtime systems for parallelism management (multithreading) and memory...
Thesis (Ph.D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer ...
Even though chip multiprocessors have emerged as the predominant organization for future microproces...
This thesis introduces the data-triggered threads (DTT) programming and execution model. Unlike thre...
The data-triggered threads (DTT) programming and execution model can increase parallelism and elimin...
Data-centric computing becomes increasingly important because of the rapid growth of application dat...
This article investigates several source-to-source C compilers for extracting pre-execution thread c...
Until recently, a steadily rising clock rate and other uniprocessor microarchitectural improvements ...
We present a compiler algorithm called BitValue, which can discover unused and constant bits in dust...
for Pre-Execution Pre-execution is a promising latency tolerance technique that uses one or more hel...
Future computers may take advantage of a dataflow program execution model (PXM) for both performance...
The performance improvement of conventional processor has begun to stagnate in recent years. Because...
Pre-execution is a promising latency tolerance technique that uses one or more helper threads runnin...
Compiler-assisted variable size benchmarking for the study of C++ metaprogram compile times. ctbenc...
Speculative multithreading $(SpMT)$ promises to be an effective mechanism for parallelizing non-nume...
This thesis studies efficient runtime systems for parallelism management (multithreading) and memory...
Thesis (Ph.D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer ...
Even though chip multiprocessors have emerged as the predominant organization for future microproces...