AuthorsZ. Vrba, P. Halvorsen, C. Griwodz, P. Beskow and D. Johansen
TitleThe Nornir Run-Time System for Parallel Programs Using Kahn Process Networks
AfilliationCommunication Systems, Communication Systems
Publication TypeProceedings, refereed
Year of Publication2009
Conference NameProceedings of 6th International Conference on Network and Parallel Computing (NPC)
PublisherIEEE Computer Society
ISBN Number978-0-7695-3837-2

Shared-memory concurrency is the prevalent paradigm used for developing parallel applications targeted towards small- and middle-sized machines, but experience has shown that it is hard to use. This is largely caused by synchronization primitives which are low-level, inherently nondeterministic, and, consequently, non-intuitive to use. In this paper, we present the \textit{Nornir} run-time system. Nornir is comparable to well-known frameworks like MapReduce and Dryad, but has additional support for process structures containing cycles. It is based on the formalism of Kahn process networks, which we deem as a simple and deterministic alternative to shared-memory concurrency. Experiments with real and synthetic benchmarks on up to 8 CPUs show that performance in most cases improves almost linearly with the number of CPUs, when not limited by data dependencies.

Citation KeySimula.ND.397