A majority of programs in use today are written for word-based computing architectures, such as the microprocessor, using word-based programming languages. The word model, while convenient, typically provides quantized word widths that are a mismatch for many applications. Consequently, many bits of a word may go unused and contribute no useful information to the computation. Removing these bits from the computation, e.g. using specialized hardware data-paths, may provide the implementation with significant savings in run-time, area, and/or power. In this project, we analyze and quantify this bit-level waste using a model of bit constancy and binding-time. Applying the model to the UCLA MediaBench suite of C programs, we find that some 70% of bit-level read operations are to easily identified constant data, much of it in unused, high-order bits. These findings suggest that there is significant opportunity for bit-level specialization of these programs by relatively simple means such as narrower data-paths.




Download Full History