Abstract
Since fast technological improvements in processor design have outpaced that in memory design, memory wall has become a performance bottleneck for microprocessor applications. Unfortunately, existing compilers do excessively context saving at function calls, which increases chances to access memory and decreases overall performance. In this paper, an optimal compiler algorithm is proposed to make context saving more efficient by utilizing an extended call graph. The algorithm is measured on a set of DSP-kernel programs by integrating it into an existing compiler IMPACT. The experimental results show a decrease in memory accesses by an average of 49.35% and an improvement in performance by an average of 3.15%.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Aho, A.V., Sethi, R., Ullman, J.D.: Compilers, Principles, Techniques and Tools. Addision Wesley (1988)
Benitez, M., Davidson, J.: A retargetable integrated code improver, Technical Report CS-93-64, Univ. of. Virginia, Dept. of Computer Sc. (November 1993)
Zhang, Y., Lee, H.J.: Register allocation by systematic merge of register-reuse chains. Electronics Letters 36(1), 16–17 (2000)
Davidson, J., Jinturkar, S.: Memory access coalescing: a technique for eliminating redundant memory accesses. In: Proceedings of PLDI (June 1994)
Barik, R., Sarkar, V.: Inter-procedural load elimination for dynamic optimization of parallel programs. In: Proceedings of PACT, pp. 41–52 (2009)
Frederick, C.: Minimizing register usage penalty at procedural calls. In: Proceedings of PLDI, pp. 85–94 (1988)
Frederick, C., Hennessy, J.L.: The Priority-Based Coloring Approach to Register Allocation. ACM Transactions on Programming Languages and Systems 12(4), 501–536 (1990)
The IMPACT Research group, http://www.crhc.uiuc.edu/Impact
DSPstone, http://www.ert.rwth-aachen.de/Projekte/Tools/DSPSTONE/dspstone.html
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag GmbH Berlin Heidelberg
About this chapter
Cite this chapter
Wang, H., Shi, L., Zhang, T., Wang, D., Hou, C. (2012). Eliminating Redundant Memory Operations at Function Calls. In: Qian, Z., Cao, L., Su, W., Wang, T., Yang, H. (eds) Recent Advances in Computer Science and Information Engineering. Lecture Notes in Electrical Engineering, vol 128. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-25792-6_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-25792-6_3
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-25791-9
Online ISBN: 978-3-642-25792-6
eBook Packages: EngineeringEngineering (R0)