Concepedia

TLDR

The paper presents Bitwise, a compiler that reduces the bitwidth of operands for integers and pointers. Bitwise propagates static information through the program dataflow graph and applies loop analysis to automatically infer operand bitwidths, eliminating the need for programmer-specified invariants. Bitwidth reductions are abundant in modern multimedia and streaming workloads, and on architectures supporting sub‑word types, they can reduce power consumption and improve performance.

Abstract

This paper introduces Bitwise, a compiler that minimizes the bitwidth the number of bits used to represent each operand for both integers and pointers in a program. By propagating 70 static information both forward and backward in the program dataflow graph, Bitwise frees the programmer from declaring bitwidth invariants in cases where the compiler can determine bitwidths automatically. Because loop instructions comprise the bulk of dynamically executed instructions, Bitwise incorporates sophisticated loop analysis techniques for identifying bitwidths. We find a rich opportunity for bitwidth reduction in modern multimedia and streaming application workloads. For new architectures that support sub-word data-types, we expect that our bitwidth reductions will save power and increase processor performance.

References

YearCitations

Page 1