Hardware and Software Generation from Large Actor Machines in Streaming Applications

Gareth Callanan, Flavius Gruian · 2024

Streaming applications, such as MPEG video encoders or sensor processing pipelines, are increasing in complexity as well as the diversity of platforms that they run on. The toolchains handling these applications must keep up with this increase at all levels of abstraction. The Actor Machine (AM) is an intermediate representation in the toolchain that we make use of. Large AMs are difficult to work with due to an extreme number of states having to be explored for implementation. In this work we add don't care conditions to the AM model and devise a novel state-reducer algorithm by assigning priorities to conditions. This allows for the compilation of larger AMs in the frontend. These AMs execute faster in software when compared to AMs from alternative state-reducer algorithms. We discover and describe bottlenecks in the downstream tools when compiling to hardware that need to be addressed.

Read the paper · More papers on PaperTik