Benedict Gaster Benedict.Gaster@uwe.ac.uk
Associate Professor in Physical Computing
HRF-relaxed: Adapting HRF to the complexities of industrial heterogeneous memory models
Gaster, Benedict; Hower, Derek; Howes, Lee
Authors
Derek Hower
Lee Howes
Abstract
© 2015 ACM. Memory consistency models, or memory models, allow both programmers and program language imple-menters to reason about concurrent accesses to one or more memory locations. Memory model specifications balance the often conflicting needs for precise semantics, implementation flexibility, and ease of understanding. Toward that end, popular programming languages like Java, C, and C++ have adopted memory models built on the conceptual foundation of Sequential Consistency for Data-Race-Free programs (SC for DRF). These SC for DRF languages were created with general-purpose homogeneous CPU systems in mind, and all assume a single, global memory address space. Such a uniform address space is usually power and performance prohibitive in heterogeneous Systems on Chips (SoCs), and for that reason most heterogeneous languages have adopted split address spaces and operations with nonglobal visibility. There have recently been two attempts to bridge the disconnect between the CPU-centric assumptions of the SC for DRF framework and the realities of heterogeneous SoC architectures. Hower et al. proposed a class of Heterogeneous-Race-Free (HRF) memory models that provide a foundation for understanding many of the issues in heterogeneous memory models. At the same time, the Khronos Group developed the OpenCL 2.0 memory model that builds on the C++ memory model. The OpenCL 2.0 model includes features not addressed by HRF: primarily support for relaxed atomics and a property referred to as scope inclusion. In this article, we generalize HRF to allow formalization of and reasoning about more complicated models using OpenCL 2.0 as a point of reference. With that generalization, we (1) make the OpenCL 2.0 memory model more accessible by introducing a platform for feature comparisons to other models, (2) consider a number of shortcomings in the current OpenCL 2.0 model, and (3) propose changes that could be adopted by future OpenCL 2.0 revisions or by other, related, models.
Journal Article Type | Article |
---|---|
Publication Date | Apr 1, 2015 |
Deposit Date | Aug 12, 2015 |
Publicly Available Date | Apr 11, 2016 |
Journal | ACM Transactions on Architecture and Code Optimization |
Print ISSN | 1544-3566 |
Electronic ISSN | 1544-3973 |
Publisher | Association for Computing Machinery (ACM) |
Peer Reviewed | Peer Reviewed |
Volume | 12 |
Issue | 1 |
Pages | 1-26 |
DOI | https://doi.org/10.1145/2701618 |
Keywords | memory models, semantics, programming languages, opencl, gpgpu |
Public URL | https://uwe-repository.worktribe.com/output/836447 |
Publisher URL | http://dx.doi.org/10.1145/2701618 |
Additional Information | Additional Information : © ACM, 2015. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Transactions on Architecture and Code Optimization, {12, 1, (April 2015)} http://doi.acm.org/10.1145/2701618 |
Contract Date | Apr 11, 2016 |
Files
opencl_memory_model.pdf
(886 Kb)
PDF
You might also like
HSA queuing model
(2015)
Book Chapter
HSA memory model
(2015)
Book Chapter
Return to temperament (In digital systems)
(2018)
Presentation / Conference Contribution
Downloadable Citations
About UWE Bristol Research Repository
Administrator e-mail: repository@uwe.ac.uk
This application uses the following open-source libraries:
SheetJS Community Edition
Apache License Version 2.0 (http://www.apache.org/licenses/)
PDF.js
Apache License Version 2.0 (http://www.apache.org/licenses/)
Font Awesome
SIL OFL 1.1 (http://scripts.sil.org/OFL)
MIT License (http://opensource.org/licenses/mit-license.html)
CC BY 3.0 ( http://creativecommons.org/licenses/by/3.0/)
Powered by Worktribe © 2024
Advanced Search