Memory-constrained Block Processing for DSP Software Optimization |
| |
Authors: | Ming-Yung Ko Chung-Ching Shen Shuvra S. Bhattacharyya |
| |
Affiliation: | (1) Sandbridge Technologies Inc., White Plains, NY, USA;(2) Electrical and Computer Engineering Department, University of Maryland, College Park, MD, USA |
| |
Abstract: | Digital signal processing (DSP) applications involve processing long streams of input data. It is important to take into account
this form of processing when implementing embedded software for DSP systems. Task-level vectorization, or block processing,
is a useful dataflow graph transformation that can significantly improve execution performance by allowing subsequences of
data items to be processed through individual task invocations. In this way, several benefits can be obtained, including reduced
context switch overhead, increased memory locality, improved utilization of processor pipelines, and use of more efficient
DSP oriented addressing modes. On the other hand, block processing generally results in increased memory requirements since
it effectively increases the sizes of the input and output values associated with processing tasks. In this paper, we investigate
the memory-performance trade-off associated with block processing. We develop novel block processing algorithms that carefully
take into account memory constraints to achieve efficient block processing configurations within given memory space limitations.
Our experimental results indicate that these methods derive optimal memory-constrained block processing solutions most of
the time. We demonstrate the advantages of our block processing techniques on practical kernel functions and applications
in the DSP domain.
|
| |
Keywords: | block processing dataflow embedded systems vectorization block diagram compiler activation overhead context switch memory management |
本文献已被 SpringerLink 等数据库收录! |
|