Automated Data-flow optimization for Digital Signal Processors

Monday, March 18, 2024 - 10:00 am
online

DISSERTATION DEFENSE

Department of Computer Science and Engineering

University of South Carolina

 

Author : Madushan Abeysinghe
Advisor : Dr. Jason Bakos
Date : March 18, 2024
Time:  10 am – 11: 00 pm

Place : Teams

Meeting ID: 234 681 711 471

Passcode: wiatfJ

 

Abstract

 

Digital signal processors (DSP), which are characterized by statically-scheduled Very Long Instruction Word architectures and software-defined scratchpad memory, are currently the go-to processor type for low-power embedded vision systems, as exemplified by the DSP processors integrated into systems-on-chips from NVIDIA, Samsung, Qualcomm, Apple, and Texas Instruments. DSPs achieve performance by statically scheduling workloads, both in terms of data movement and instructions. We developed a method for scheduling buffer transactions across a data flow graph using data-driven performance models, yielding a 25% average reduction in execution time and a reduction of up to 85% DRAM utilization for randomly-generated data flow graphs. We also developed a heuristic instruction scheduler that serves as a performance model to guide the selection of loops from a target data flow graph to be fused. By strategically selecting loops to fuse, performance gains can be achieved by eliminating unnecessary transactions with memory and increasing functional unit utilization. This approach has helped us achieve up to 1.9x speedup on average for sufficiently large data flow graphs used in image processing.