Efficient Complex Operators for Irregular Codes
Source: University of Calgary
Complex "Fat operators" are important contributors to the efficiency of specialized hardware. This paper introduces two new techniques for constructing efficient fat operators featuring up to dozens of operations with arbitrary and irregular data and memory dependencies. These techniques focus on minimizing critical path length and load-use delay, which are key concerns for irregular computations. Selective De-Pipelining (SDP) is a pipelining technique that allows fat operators containing several, possibly dependent, memory operations. SDP allows memory requests to operate at a faster clock rate than the data-path, saving power in the data-path and improving memory performance. Cachelets are small, customized, distributed L0 caches embedded in the data-path to reduce load-use latency.