Skip to Main content Skip to Navigation
Conference papers

Ensuring Memory Consistency in Heterogeneous Systems Based on Access Mode Declarations

Abstract : Running a program on disjoint memory spaces requires to address memory consistency issues and to perform transfers so that the program always accesses the right data. Several approaches exist to ensure the consistency of the memory accessed, we are interested here in the verification of a declarative approach where each component of a computation is annotated with an access mode declaring which part of the memory is read or written by the component. The programming framework uses the component annotations to guarantee the validity of the memory accesses. This is the mechanism used in VectorPU, a C++ library for programming CPU-GPU heterogeneous systems and this article proves the correctness of the software cache-coherence mechanism used in the library. Beyond the scope of VectorPU, this article can be considered as a simple and effective formalisation of memory consistency mechanisms based on the explicit declaration of the effect of each component on each memory space.
Complete list of metadatas

Cited literature [12 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-01813273
Contributor : Ludovic Henrio <>
Submitted on : Tuesday, June 12, 2018 - 11:00:58 AM
Last modification on : Tuesday, May 26, 2020 - 6:50:56 PM
Document(s) archivé(s) le : Thursday, September 13, 2018 - 2:01:12 PM

File

main.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-01813273, version 1

Collections

Citation

Ludovic Henrio, C Kessler, Lu Li. Ensuring Memory Consistency in Heterogeneous Systems Based on Access Mode Declarations. 5th International Symposium on Formal Approaches to Parallel and Distributed Systems, as part of The 16th International Conference on High Performance Computing & Simulation (HPCS 2018), Frédéric Loulergue; Jean-Michel Couvreur, Jul 2018, Orléans, France. ⟨hal-01813273⟩

Share

Metrics

Record views

219

Files downloads

308