WarmPie: A bare-bones implementation of message passing interface for embedded many-cores
Kui Wang, Erno Salminen, Jari Nurmi, Tapani Ahonen · 2015
In this paper we present a message-passing based interface, WarmPie, to simplify data communication and management on a Multi-Processor System-on-Chip (MPSoC). WarmPie defines a subset of Message Passing Interface (MPI) library routines. We provide C language implementation of those routines on a 9-core MPSoC. WarmPie offers an abstract view of the MPSoC to facilitate effortless integration of software to hardware. In one use case study of developing a ring communication program on the MPSoC, software development effort is reduced by a factor of 3.75 due to using WarmPie. The application using WarmPie is fully compatible with a reference MPI environment on Linux. WarmPie has a small memory footprint of 7.3KB per core. Although data transmission latency has increased due to using the interface, the overhead is amortized when transferring a bigger payload in one message.