Show simple item record

dc.contributor.authorVilanova, Lluis
dc.contributor.authorJordà Peroliu, Marc
dc.contributor.authorNavarro, Nacho
dc.contributor.authorEtsion, Yoav
dc.contributor.authorValero Cortés, Mateo
dc.contributor.otherUniversitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors
dc.contributor.otherBarcelona Supercomputing Center
dc.date.accessioned2017-05-29T13:20:03Z
dc.date.available2017-05-29T13:20:03Z
dc.date.issued2017
dc.identifier.citationVilanova, L., Jordà, M., Navarro, N., Etsion, Y., Valero, M. Direct Inter-Process Communication (dIPC): Repurposing the CODOMs architecture to accelerate IPC. A: European Conference on Computer Systems. "Proceedings of the Twelfth European Conference on Computer Systems". Belgrade: Association for Computing Machinery (ACM), 2017, p. 16-31.
dc.identifier.isbn978-1-4503-4938-3
dc.identifier.urihttp://hdl.handle.net/2117/105003
dc.description.abstractIn current architectures, page tables are the fundamental mechanism that allows contemporary OSs to isolate user processes, binding each thread to a specific page table. A thread cannot therefore directly call another process's function or access its data; instead, the OS kernel provides data communication primitives and mediates process synchronization through inter-process communication (IPC) channels, which impede system performance. Alternatively, the recently proposed CODOMs architecture provides memory protection across software modules. Threads can cross module protection boundaries inside the same process using simple procedure calls, while preserving memory isolation. We present dIPC (for "direct IPC"), an OS extension that repurposes and extends the CODOMs architecture to allow threads to cross process boundaries. It maps processes into a shared address space, and eliminates the OS kernel from the critical path of inter-process communication. dIPC is 64.12× faster than local remote procedure calls (RPCs), and 8.87× faster than IPC in the L4 microkernel. We show that applying dIPC to a multi-tier OLTP web server improves performance by up to 5.12× (2.13× on average), and reaches over 94% of the ideal system efficiency.
dc.description.sponsorshipWe thank Diego Marr´on for helping with MariaDB, the anonymous reviewers for their feedback and, especially, Andrew Baumann for helping us improve the paper. This research was partially funded by HiPEAC through a collaboration grant for Lluís Vilanova (agreement number 687698 for the EU’s Horizon2020 research and innovation programme), the Israel Science Fundation (ISF grant 769/12) and the Israeli Ministry of Science, Technology and Space.
dc.format.extent16 p.
dc.language.isoeng
dc.publisherAssociation for Computing Machinery (ACM)
dc.subjectÀrees temàtiques de la UPC::Informàtica::Enginyeria del software
dc.subject.lcshSoftware architecture
dc.subject.lcshOperating systems (Computers)
dc.subject.otherSoftware and its engineering
dc.subject.otherProcess synchronization
dc.titleDirect Inter-Process Communication (dIPC): Repurposing the CODOMs architecture to accelerate IPC
dc.typeConference report
dc.subject.lemacProgramari -- Disseny
dc.subject.lemacSistemes operatius (Ordinadors)
dc.contributor.groupUniversitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions
dc.identifier.doi10.1145/3064176.3064197
dc.description.peerreviewedPeer Reviewed
dc.relation.publisherversionhttp://dl.acm.org/citation.cfm?id=3064197
dc.rights.accessOpen Access
local.identifier.drac20568292
dc.description.versionPostprint (author's final draft)
dc.relation.projectidinfo:eu-repo/grantAgreement/EC/H2020/687698/EU/High Performance and Embedded Architecture and Compilation/HiPEAC
local.citation.authorVilanova, L.; Jorda, M.; Navarro, N.; Etsion, Y.; Valero, M.
local.citation.contributorEuropean Conference on Computer Systems
local.citation.pubplaceBelgrade
local.citation.publicationNameProceedings of the Twelfth European Conference on Computer Systems
local.citation.startingPage16
local.citation.endingPage31


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record