Communication Optimizations for Multithreaded Code Generation from Simulink Models.

Kai Huang,Min Yu,Rongjie Yan,Xiaomeng Zhang,Xiaolang Yan,Lisane Brisolara,Ahmed Amine Jerraya,Jiong Feng
DOI: https://doi.org/10.1145/2644811
2015-01-01
ACM Transactions on Embedded Computing Systems
Abstract:Communication frequency is increasing with the growing complexity of emerging embedded applications and the number of processors in the implemented multiprocessor SoC architectures. In this article, we consider the issue of communication cost reduction during multithreaded code generation from partitioned Simulink models to help designers in code optimization to improve system performance. We first propose a technique combining message aggregation and communication pipeline methods, which groups communications with the same destinations and sources and parallelizes communication and computation tasks. We also present a method to apply static analysis and dynamic emulation for efficient communication buffer allocation to further reduce synchronization cost and increase processor utilization. The existing cyclic dependency in the mapped model may hinder the effectiveness of the two techniques. We further propose a set of optimizations involving repartition with strongly connected threads to maximize the degree of communication reduction and preprocessing strategies with available delays in the model to reduce the number of communication channels that cannot be optimized. Experimental results demonstrate the advantages of the proposed optimizations with 11--143% throughput improvement.
What problem does this paper attempt to address?