Abstract
Offset assignment is a highly effective DSP address code optimization technique that has been implemented in a number of ANSI C compilers. In this paper we concentrate on a special class of offset assignment problems called “simple offset assignment” (SOA). A number of SOA algorithms have been proposed recently, but experimental results and direct comparisons are still sparse. This makes the practical selection of a suitable SOA algorithm for implementation in a compiler very difficult. This paper aims at closing this gap by providing a comprehensive benchmark suite and empirical evaluation based on real-life application programs. Our results for the first time permit a detailed assessment of all major SOA algorithms. In addition, we propose a new and superior combination of SOA heuristics.
Chapter PDF
Similar content being viewed by others
References
S. Liao: Code Generation and Optimization for Embedded Digital Signal Processors, Ph.D. thesis, Dept. of Electrical Engineering and Computer Science, Massachusetts Institute of Technology, 1996
S. Udayanarayanan, C. Chakrabarti: Address Code Generation for Digital Signal Processors, 38th Design Automation Conference (DAC), 2001
S. Liao, S. Devadas, K. Keutzer, S. Tjiang, A. Wang: Storage Assignment to Decrease Code Size, ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 1995
R. Leupers, P. Marwedel: Algorithms for Address Assignment in DSP Code Generation, Int. Conference on Computer-Aided Design (ICCAD), 1996
D.H. Bartley: Optimizing Stack Frame Accesses for Processors with Restricted Addressing Modes, Software-Practice and Experience, vol. 22(2), 1992
M.R. Gary, D.S. Johnson: Computers and Intractability-A Guide to the Theory of NPCompleteness, Freemann, 1979
B. Wess: Minimization of Data Address Computation Overhead in DSPs, 3rd Int.Workshop on Code Generation for Embedded Processors (SCOPES), 1998
A. Rao, S. Pande: Storage Assignment using Expression Tree Transformations to Generate Compact and Efficient DSP Code, ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 1999
V. Zivojnovic, J.M. Velarde, C. Schläger, H. Meyr: DSPStone-A DSP-oriented Benchmarking Methodology, Int. Conf. on Signal Processing Applications and Technology (ICSPAT), 1994
R. Leupers, F. David: A Uniform Optimization Technique for Offset Assignment Problems, 11th Int. System Synthesis Symposium (ISSS), 1998
S. Atri, J. Ramanujam, M. Kandemir: Improving Offset Assignment for Embedded Processors, Languages and Compilers for High-Performance Computing, S. Midkiff et al. (eds.), Lecture Notes in Computer Science, Springer, 2001
N. Sugino, H. Miyazaki, S. Iimuro, A. Nishihara: Improved Code Optimization Method Utilizing Memory Addressing Operations and its Application to DSP Compilers, Int. Symp. on Circuits and Systems (ISCAS), 1996
B. Wess, M. Gotschlich: Constructing Memory Layouts for Address Generation Units Supporting Offset 2 Access, Proc. ICASSP, 1997
N. Kogure, N. Sugino, A. Nishihara: Memory Address Allocation Method for a DSP with +/-2 Update Operations in Indirect Addressing, European Conference on Circuit Theory and Design (ECCTD), 1997
A. Sudarsanam, S. Liao, S. Devadas: Analysis and Evaluation of Address Arithmetic Capabilities in Custom DSP Architectures, Design Automation Conference (DAC), 1997
B. Wess, M. Gotschlich: Optimal DSP Memory Layout Generation as a Quadratic Assignment Problem, Int. Symp. on Circuits and Systems (ISCAS), 1997
E. Eckstein, A. Krall: Minimizing Cost of Local Variables Access for DSP Processors, ACM Workshop on Languages, Compilers, and Tools for Embedded Systems (LCTES), 1999
C. Liem, P. Paulin, A. Jerraya: Address Calculation for Retargetable Compilation and Exploration of Instruction-Set Architectures, 33rd Design Automation Conference (DAC), 1996
C. Gebotys: DSP Address Optimization Using a Minimum Cost Circulation Technique, Int. Conference on Computer-Aided Design (ICCAD), 1997
R. Leupers, A. Basu, P. Marwedel: Optimized Array Index Computation in DSP Programs, Asia South Pacific Design Automation Conference (ASP-DAC), 1998
W.-K. Cheng, Y.-L. Lin: Addressing Optimization for Loop Execution Targeting DSP with Auto-Increment/Decrement Architecture, 11th Int. System Synthesis Symposium (ISSS), 1998
G. Ottoni, S. Rigo, G. Araujo, S. Rajagopalan, S. Malik: Optimal Live Range Merge for Address Register Allocation in Embedded Programs, 10th International Conference on Compiler Construction (CC), 2001
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Leupers, R. (2003). Offset Assignment Showdown: Evaluation of DSP Address Code Optimization Algorithms. In: Hedin, G. (eds) Compiler Construction. CC 2003. Lecture Notes in Computer Science, vol 2622. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36579-6_21
Download citation
DOI: https://doi.org/10.1007/3-540-36579-6_21
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00904-7
Online ISBN: 978-3-540-36579-2
eBook Packages: Springer Book Archive