@inproceedings{dc9a75036f0c4a4fbba944410a3fb279,
title = "Scheduling irregular dataflow pipelines on SIMD architectures",
abstract = "Streaming computations often exhibit substantial data parallelism that makes them well-suited to SIMD architectures. However, many such computations also exhibit irregularity, in the form of data-dependent, dynamic data rates, that makes efficient SIMD execution challenging. One aspect of this challenge is the need to schedule execution of a computation realized as a pipeline of stages connected by finite queues. A scheduler must both ensure high SIMD occupancy by gathering queued items into vectors and minimize costs associated with switching execution between stages. In this work, we present the AFIE (Active Full, Inactive Empty) scheduling policy for irregular streaming applications on SIMD processors. AFIE provably groups inputs to each stage of a pipeline into a minimal number of SIMD vectors while incurring a bounded number of switches relative to the best possible policy. These results apply even though irregularity forbids a priori knowledge of how many outputs will be generated from each input to each stage. We have implemented AFIE as an extension to the MERCATOR system [6] for building irregular streaming applications on NVIDIA GPUs.We describe how the AFIE scheduler simplifies MERCATOR's runtime code and empirically measure the new scheduler's improved performance on irregular streaming applications.",
keywords = "Irregular applications, Scheduling, SIMD, Streaming",
author = "Tom Plano and Jeremy Buhler",
note = "Funding Information: The authors thank Dr. Angelina Lee for helpful discussions and the anonymous referees for their valuable comments. This work is supported by NSF CISE award CNS-1763503. Publisher Copyright: {\textcopyright} 2020 Copyright held by the owner/author(s).; 6th Workshop on Programming Models for SIMD/Vector Processing, WPMVP 2020, co-located with PPoPP 2020 ; Conference date: 22-02-2020",
year = "2020",
month = feb,
day = "22",
doi = "10.1145/3380479.3380480",
language = "English",
series = "WPMVP 2020 - Proceedings of the 2020 6th Workshop on Programming Models for SIMD/Vector Processing, co-located with PPoPP 2020",
publisher = "Association for Computing Machinery, Inc",
editor = "Jan Eitzinger and Lionel Lacassagne",
booktitle = "WPMVP 2020 - Proceedings of the 2020 6th Workshop on Programming Models for SIMD/Vector Processing, co-located with PPoPP 2020",
}