  The design of heterogeneous systems that include domain specific accelerators
is a challenging and time-consuming process. While taking into account area
constraints, designers must decide which parts of an application to accelerate
in hardware and which to leave in software. Moreover, applications in domains
such as Extended Reality (XR) offer opportunities for various forms of parallel
execution, including loop level, task level and pipeline parallelism. To assist
the design process and expose every possible level of parallelism, we present
Trireme, a fully automated tool-chain that explores multiple levels of
parallelism and produces domain specific accelerator designs and configurations
that maximize performance, given an area budget. Experiments on demanding
benchmarks from the XR domain revealed a speedup of up to 20x, as well as a
speedup of up to 37x for smaller applications, compared to software-only
implementations.
