Exploring heterogeneous scheduling for edge computing with CPU and FPGA MPSoCs

Andrés Rodríguez, Angeles Navarro, Rafael Asenjo*, Francisco Corbera, Rubén Gran, Darío Suárez, Jose Nunez-Yanez

*Corresponding author for this work

Research output: Contribution to journalArticle (Academic Journal)peer-review

12 Citations (Scopus)
58 Downloads (Pure)


This paper presents a framework targeted to low-cost and low-power heterogeneous MultiProcessors that exploits FPGAs and multicore CPUs, with the overarching goal of providing developers with a productive programming model and runtime support to fully use all the processing resources available. FPGA productivity is achieved using a high-level programming model based on OpenCL, the standard for cross-platform parallel heterogeneous programming. In this work, we focus on the parallel_for pattern, and as part of the runtime support for this pattern, we leverage a new scheduler that strives to maximize the number of iterations per joule by dynamically and adaptively partitioning the iteration space between the multicore and the accelerator when working simultaneously. A total of 7 benchmarks are ported and optimized for a low-cost DE1 board. The results show that the heterogeneous solution can improve performance up to 2.9 × and increases energy efficiency up to 2.7 × compared to the traditional approach of keeping all the CPU cores idle while the accelerator computes the workload. Our results also demonstrate two interesting insights: first, an adaptive scheduler able to find at runtime the right chunk size for each type of application and device configuration is an essential component for these kinds of heterogeneous platforms, and second, device configurations that provide higher throughput do not always achieve better energy efficiency when only the running power (excluding the idle power component) is considered.

Original languageEnglish
Pages (from-to)27-40
Number of pages14
JournalJournal of Systems Architecture
Early online date13 Jun 2019
Publication statusPublished - 1 Sep 2019


Dive into the research topics of 'Exploring heterogeneous scheduling for edge computing with CPU and FPGA MPSoCs'. Together they form a unique fingerprint.

Cite this