Litcius/Paper detail

An Efficient Task Assignment Framework to Accelerate DPU-Based Convolutional Neural Network Inference on FPGAs

Jiang Zhu, Lizan Wang, Haolin Liu, Shujuan Tian, Qingyong Deng, Jianqi Li

2020IEEE Access45 citationsDOIOpen Access PDF

Abstract

Field Programmable Gate Array (FPGA) has become an efficient accelerator for convolutional neural network (CNN) inference due to its high performance and flexibility. To further improve the performance of CNN inference on FPGAs, an Intellectual Property core (IP core) called Deep Learning Processor Unit (DPU) is released by Xilinx. Unlike previous FPGA-based hardware designs focusing on specific functions or CNNs, the DPU IP supports ample basic functions of deep learning, and the developers can take advantage of DPUs to accelerate CNN inference conveniently. In DPU-based CNN acceleration platform, an encapsulated scheduler plays a crucial role in task scheduling between heterogeneous ARM and multiple DPUs. However, the current scheduler is unsatisfactory because its low schedule efficiency. This paper thus presents a high performance task assignment framework built upon Xilinx hybrid CPU-FPGA MPSoC devices. We first evaluate the main causes of low schedule efficiency problem. Then, we explore the scheduler rules and improve shedule efficiency through purposeful observations and analysis. Finally, we integrate our optimizations, and propose an efficient task assignment framework to maximize performance on DPU-based CNN acceleration platform. Experimental results on Xilinx Zynq UltraScale+ MPSoC zcu104 show that our efficient task assignment framework significantly boosts schedule efficiency for small-scale CNNs (from 36% to 70%), medium-scale CNNs (from 65% to 95%), and large-scale CNNs (from 77% to 99%) compared with original schedule strategy.

Topics & Concepts

MPSoCField-programmable gate arrayComputer scienceConvolutional neural networkScheduling (production processes)InferenceEmbedded systemScheduleComputer architectureJob shop schedulingDeep learningTask (project management)Multi-core processorArtificial intelligenceParallel computingDistributed computingSystem on a chipEngineeringRouting (electronic design automation)Operating systemSystems engineeringOperations managementAdvanced Neural Network ApplicationsCCD and CMOS Imaging SensorsAdvanced Memory and Neural Computing