{'fraction_non_alphanumeric': 0.017743979721166033, 'fraction_numerical': 0.0, 'mean_word_length': 5.4227642276422765, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
An Approach to Map Sequential Applications onto Multi-Processor Platforms

Sequentially specified applications are not optimized to run on multiprocessor platforms. Kahn Process Networks can be used to represent a sequential application and with it, we are able to compute a mapping onto a multi-processor platform. A Kahn Process Network is a graph representation in which the nodes represent the function calls (or processes) of the sequential application, and the edges are unbounded FIFO channels. Respecting the dependencies which are analyzed by the PN compiler, process partitioning transformations can be applied to optimize the network for a given platform. Three different transformations have been implemented and will be discussed, namely plane cut, modulo unfolding and merge.