Tampere University of Technology

TUTCRIS Research Portal

Executing dataflow actors as kahn processes

Research output: Chapter in Book/Report/Conference proceedingConference contributionScientificpeer-review


Original languageEnglish
Title of host publication2015 Proceedings of the International Conference on Embedded Software, EMSOFT 2015
PublisherInstitute of Electrical and Electronics Engineers Inc.
Number of pages10
ISBN (Electronic)9781467380799
Publication statusPublished - 4 Nov 2015
Publication typeA4 Article in a conference publication
Event13th International Conference on Embedded Software, EMSOFT 2015 - Amsterdam, Netherlands
Duration: 4 Oct 20159 Oct 2015


Conference13th International Conference on Embedded Software, EMSOFT 2015


Programming models which specify an application as a network of independent computational elements have emerged as a promising paradigm for programming streaming applications. The antagonism between expressivity and analysability has led to a number of different such programming models, which provide different degrees of freedom to the programmer. One example are Kahn process networks (KPNs), which, due to certain restrictions in communication, can guarantee determinacy (their results are independent of timing by construction). On the other hand, certain dataflow models, such as the CAL Actor Language, allow non-determinacy and thus higher expressivity, however at the price of static analysability and thus a potentially less efficient implementation. In many cases, however, non-determinacy is not required (or even not desired), and relying on KPN for the implementation seems advantageous. In this paper, we propose an algorithm for classifying dataflow actors (i.e. computational elements) as KPN compatible or potentially not. For KPN compatible dataflow actors, we propose an automatic KPN translation method based on this algorithm. In experiments, we show that more than 75% of all mature actors of a standard multimedia benchmark suite can be classified as KPN compatible and that their execution time can be reduced by up to 1.97x using our proposed translation technique. Finally, in a manual classification effort, we validate these results and list different classes of KPN incompatibility.

ASJC Scopus subject areas


  • classification, Dataflow programming, Kahn process networks