Abstract
A complete framework for modelling memory consistency that includes register and control dependencies is presented. It allows us to determine whether or not a given computation could have arisen from a given program running on a given multiprocessor architecture. The framework is used to provide an exact description of the computations of (a subset of) the Itanium instruction set on an Itanium multiprocessor architecture. We show that capturing register and control dependencies is crucial: a producer/consumer problem is solvable without using strong synchronization primitives on Itanium multiprocessors, but is impossible without exploiting these dependencies.
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
Adir, A., Attiya, H., Shurek, G.: Information-flow models for shared memory with an application to the PowerPC architecture. IEEE Trans. on Parallel and Distributed Systems 14(5), 502–515 (2003)
Attiya, H., Friedman, R.: Programming DEC-Alpha based multiprocessors the easy way. In: Proc. 6th Int’l Symp. on Parallel Algorithms and Architectures, pp. 157–166 (1994), Technical Report LPCR 9411, Computer Science Department, Technion
Chatterjee, P., Gopalakrishnan, G.: Towards a formal model of shared memory consistency for intel itaniumtm. In: Proc. 2001 IEEE International Conference on Computer Design (ICCD), September 2001, pp. 515–518 (2001)
Herlihy, M., Wing, J.: Linearizability: A correctness condition for concurrent objects. ACM Trans. on Programming Languages and Systems 12(3), 463–492 (1990)
Higham, L., Jackson, L., Kawash, J.: Specifying memory consistency of write buffer multiprocessors. ACM Trans. on Computer Systems (in press)
Higham, L., Jackson, L., Kawash, J.: Capturing register and control dependence in memory consistency models with applications to the Itanium architecture. Technical Report 2006-837-30, Department of Computer Science, The University of Calgary (July 2006)
Higham, L., Jackson, L., Kawash, J.: Programmer-centric conditions for Itanium memory consistency. Technical Report 2006-838-31, Department of Computer Science, The University of Calgary (July 2006)
Higham, L., Kawash, J.: Tight bounds for critical sections on processor consistent platforms. IEEE Trans. on Parallel and Distributed Systems (in press)
Higham, L., Kawash, J.: Critical sections and producer/consumer queues in weak memory systems. In: Proc. 1997 Int’l. Symp. on Parallel Architectures, Algorithms, and Networks, pp. 56–63 (December 1997)
Higham, L., Kawash, J.: Java: Memory consistency and process coordination (extended abstract). In: Kutten, S. (ed.) DISC 1998. LNCS, vol. 1499, pp. 201–215. Springer, Heidelberg (1998)
Higham, L., Kawash, J.: Memory consistency and process coordination for SPARC multiprocessors. In: Prasanna, V.K., Vajapeyam, S., Valero, M. (eds.) HiPC 2000. LNCS, vol. 1970, pp. 355–366. Springer, Heidelberg (2000)
Intel Corporation. A formal specification of the intel itanium processor family memory ordering (October 2002), http://www.intel.com/
Intel Corporation. Intel Architecture Architecture Software Developer’s Manual: Volume 3: Instruction Set Reference. Intel Corporation (October 2002)
Intel Corporation. Intel itanium architecture software developer’s manual, vol. 2, System architecture (October 2002), http://www.intel.com/
Jackson, L.: Complete framework for memory consistency with applications to Itanium multiprocessors. Ph.D. Dissertation (in preparation)
Joshi, R., Lamport, L., Matthews, J., Tasiran, S., Tuttle, M., Yu, Y.: Checking cache-coherence protocols with tla (2003)
Lamport, L.: How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. on Computers C-28(9), 690–691 (1979)
Yang, Y., Gopalakrishnan, G.C., Lindstrom, G., Slind, K.: Analyzing the intel itanium memory ordering rules using logic programming and SAT. In: Geist, D., Tronci, E. (eds.) CHARME 2003. LNCS, vol. 2860, pp. 81–95. Springer, Heidelberg (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Higham, L., Jackson, L., Kawash, J. (2006). Capturing Register and Control Dependence in Memory Consistency Models with Applications to the Itanium Architecture. In: Dolev, S. (eds) Distributed Computing. DISC 2006. Lecture Notes in Computer Science, vol 4167. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11864219_12
Download citation
DOI: https://doi.org/10.1007/11864219_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-44624-8
Online ISBN: 978-3-540-44627-9
eBook Packages: Computer ScienceComputer Science (R0)