Abstract
A swap instruction, which exchanges a value in memory with a value of a register, is available on many architectures. The primary application of a swap instruction has been for process synchronization. As an experiment we wished to see how often a swap instruction can be used to coalesce loads and stores to improve the performance of a variety of applications. The results show that both the number of accesses to the memory system (data cache) and the number of executed instructions are reduced.
Chapter PDF
Similar content being viewed by others
References
M. E. Benitez and J. W. Davidson, “A Portable Global Optimizer and Linker,” Proceedings of the SIGPLAN’88 Symposium on Programming Language Design and Implementation, Atlanta, GA, pp. 329–338, June 1988.
J. W. Davidson and S. Jinturkar, “Memory Access Coalescing: A Technique for Eliminating Redundant Memory Accesses,” Proceedings of the SIGPLAN’94 Symposium on Programming Language Design and Implementation, pp. 186–195, June1994.
W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery, Numerical Recipes in C: The Art of Scientific Computing, Second Edition, Cambridge University Press, New York, NY, 1996.
A. Qasem, D. Whalley, X. Yuan, R. van Engelen, “Using a Swap Instruction to Coalesce Loads and Stores,” Technical Report TR-010501, Computer Science Dept., Florida State University.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Qasem, A., Whalley, D., Yuan, X., van Engelen, R. (2001). Using a Swap Instruction to Coalesce Loads and Stores. In: Sakellariou, R., Gurd, J., Freeman, L., Keane, J. (eds) Euro-Par 2001 Parallel Processing. Euro-Par 2001. Lecture Notes in Computer Science, vol 2150. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44681-8_35
Download citation
DOI: https://doi.org/10.1007/3-540-44681-8_35
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42495-6
Online ISBN: 978-3-540-44681-1
eBook Packages: Springer Book Archive