Abstract
Multicore processor architectures have established themselves as the new generation of processor architectures. As part of the one core to many cores evolution, memory access mechanisms have advanced rapidly. Several new memory access mechanisms have been implemented in many modern commodity multicore processors. Memory access mechanisms, by devising how processing cores access the shared memory, directly influence the synchronization capabilities of the multicore processors. Therefore, it is crucial to investigate the synchronization power of these new memory access mechanisms.
This paper investigates the synchronization power of coalesced memory accesses, a family of memory access mechanisms introduced in recent large multicore architectures like the CUDA graphics processors. We first design three memory access models to capture the fundamental features of the new memory access mechanisms. Subsequently, we prove the exact synchronization power of these models in terms of their consensus numbers. These tight results show that the coalesced memory access mechanisms can facilitate strong synchronization between the threads of multicore processors, without the need of synchronization primitives other than reads and writes. In the case of the contemporary CUDA processors, our results imply that the coalesced memory access mechanisms have consensus numbers up to sixteen.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Cell Broadband Engine Architecture, version 1.01. IBM, Sony and Toshiba Corporations (2006)
NVIDIA CUDA Compute Unified Device Architecture, Programming Guide, version 1.1. NVIDIA Corporation (2007)
Adve, S.V., Gharachorloo, K.: Shared memory consistency models: A tutorial. Computer 29(12), 66–76 (1996)
Afek, Y., Merritt, M., Taubenfeld, G.: The power of multi-objects (extended abstract). In: PODC 1996: Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing, pp. 213–222 (1996)
Attiya, H., Welch, J.: Distributed Computing: Fundamentals, Simulations, and Advanced Topics. John Wiley and Sons, Inc., Chichester (2004)
Buhrman, H., Panconesi, A., Silvestri, R., Vitanyi, P.: On the importance of having an identity or, is consensus really universal? Distrib. Comput. 18(3), 167–176 (2006)
Castano, I., Micikevicius, P.: Personal communication. NVIDIA (2008)
Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)
Ha, P.H., Tsigas, P., Anshus, O.J.: The synchronization power of coalesced memory accesses. Technical report CS:2008-68, University of Tromsø, Norway (2008)
Herlihy, M.: Wait-free synchronization. ACM Transaction on Programming and Systems 11(1), 124–149 (1991)
Jayanti, P., Khanna, S.: On the power of multi-objects. In: Mavronicolas, M. (ed.) WDAG 1997. LNCS, vol. 1320, pp. 320–332. Springer, Heidelberg (1997)
Lamport, L.: How to make a multiprocessor computer that correctly executes multiprocess progranm. IEEE Trans. Comput. 28(9), 690–691 (1979)
Owens, J.D., Luebke, D., Govindaraju, N., Harris, M., Krüger, J., Lefohn, A.E., Purcell, T.J.: A survey of general-purpose computation on graphics hardware. Computer Graphics Forum 26(1), 80–113 (2007)
Ramamurthy, S., Moir, M., Anderson, J.H.: Real-time object sharing with minimal system support. In: Proc. of Symp. on Principles of Distributed Computing (PODC), pp. 233–242 (1996)
Ruppert, E.: Determining consensus numbers. In: Proc. of Symp. on Principles of Distributed Computing (PODC), pp. 93–99 (1997)
Ruppert, E.: Consensus numbers of multi-objects. In: Proc. of Symp. on Principles of Distributed Computing (PODC), pp. 211–217 (1998)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Ha, P.H., Tsigas, P., Anshus, O.J. (2008). The Synchronization Power of Coalesced Memory Accesses. In: Taubenfeld, G. (eds) Distributed Computing. DISC 2008. Lecture Notes in Computer Science, vol 5218. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87779-0_22
Download citation
DOI: https://doi.org/10.1007/978-3-540-87779-0_22
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-87778-3
Online ISBN: 978-3-540-87779-0
eBook Packages: Computer ScienceComputer Science (R0)