Sections

Skip to content. | Skip to navigation

You are here: Home Research Networks and Distributed Systems Publications The Nornir run-time system for parallel programs using Kahn process networks

Z. Vrba, P. Halvorsen, C. Griwodz, P. Beskow, and D. Johansen (2009)

The Nornir run-time system for parallel programs using Kahn process networks

In: Proceedings of 6th International Conference on Network and Parallel Computing (NPC), ed. by NA, pp. 1-8, IEEE Computer Society (ISBN: 978-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.
Personal tools