@inproceedings {Simula.ND.397,
	title = {The Nornir Run-Time System for Parallel Programs Using Kahn Process Networks},
	journal = {Proceedings of 6th International Conference on Network and Parallel Computing (NPC)},
	year = {2009},
	pages = {1-8},
	publisher = {IEEE Computer Society},
	type = {Conference},
	abstract = {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.},
	isbn = {978-0-7695-3837-2},
	author = {Vrba, Zeljko and Halvorsen, P{\r a}l and Griwodz, Carsten and Beskow, Paul and Johansen, Dag}
}
