enter search term and/or author name
A compiler framework for speculative optimizations
Jin Lin, Tong Chen, Wei-Chung Hsu, Pen-Chung Yew, Roy Dz-Ching Ju, Tin-Fook Ngai, Sun Chan
Speculative execution, such as control speculation or data speculation, is an effective way to improve program performance. Using edge/path profile information or simple heuristic rules, existing compiler frameworks can adequately incorporate and...
Interaction cost and shotgun profiling
Brian A. Fields, Rastislav Bodik, Mark D. Hill, Chris J. Newburn
We observe that the challenges software optimizers and microarchitects face every day boil down to a single problem: bottleneck analysis. A bottleneck is any event or resource that contributes to execution time, such as a critical cache miss or...
Profile-based adaptation for cache decay
Karthik Sankaranarayanan, Kevin Skadron
"Cache decay" is a set of leakage-reduction mechanisms that put cache lines that have not been accessed for a specific duration into a low-leakage standby mode. This duration is called the decay interval, and its optimal value varies across...
Intraprogram dynamic voltage scaling: Bounding opportunities with analytic modeling
Fen Xie, Margaret Martonosi, Sharad Malik
Dynamic voltage scaling (DVS) has become an important dynamic power-management technique to save energy. DVS tunes the power-performance tradeoff to the needs of the application. The goal is to minimize energy consumption while meeting performance...