@inproceedings{baumann2014cosh, author = {Baumann, Andrew and Hawblitzel, Chris and Kourtis, Kornilios and Harris, Tim and Roscoe, Timothy}, title = {Cosh: clear OS data sharing in an incoherent world}, booktitle = {2014 Conference on Timely Results in Operating Systems (TRIOS '14)}, year = {2014}, month = {October}, abstract = {This paper tackles the problem of providing familiar OS abstractions for I/O (such as pipes, network sockets, and a shared file system) to applications on heterogeneous cores including accelerators, co-processors, and offload engines. We aim to isolate the implementation of these facilities from the details of a platform's memory architecture, which is likely to include a combination of cache-coherent shared memory, non-cache-coherent shared memory, and non-shared memory, all in the same system. We propose coherence-oblivious sharing (Cosh), a new OS abstraction that provides inter-process sharing with clear semantics on such diverse hardware. We have implemented a prototype of Cosh for the Barrelfish multikernel. We describe how to build common OS functionality using Cosh, and evaluate its performance on a heterogeneous system consisting of commodity cache-coherent CPUs and prototype Intel many-core co-processors.}, publisher = {USENIX - Advanced Computing Systems Association}, url = {http://approjects.co.za/?big=en-us/research/publication/cosh-clear-os-data-sharing-in-an-incoherent-world/}, }