The Kahn Process Network (KPN) model is a type of formal dataflow
model that is highly useful for modeling and exploiting functional
parallelism in streaming data applications (such as signal processing).
This model consists of concurrent processes communicating via
one-way channels that are first-in first-out queues.
The model maps easily to multi-threaded and/or multi-processor targets.
The KPN model has an important quality that it guarantees determinacy
regardless of the rates or order in which processes execute.
Thus, the *correctness* of a computation under this model does not
depend on the use of explicit synchronization mechanisms.
Moreover, KPN facilitates code-reuse and eases system design.

Our research explores three dimensions of the problems confronting the KPN model:

- scalable, determinate algorithms to detect and resolve local deadlocks
- extensions of the KPN model for streaming applications
- efficient scalable distributed implementations of KPN extensions

Mail comments about this page to bevans@ece.utexas.edu.