Litcius/Paper detail

Taskflow: A General-Purpose Parallel and Heterogeneous Task Programming System

Tsung‐Wei Huang, Dian-Lun Lin, Yibo Lin, Chun-Xun Lin

2021IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems34 citationsDOI

Abstract

Taskflow tackles the long-standing question: How can we make it easier for developers to program parallel and heterogeneous computer-aided design (CAD) applications with high performance and simultaneous high productivity? Taskflow introduces a new powerful task graph programming model to assist developers in the implementation of parallel and heterogeneous algorithms with complex control flow. We develop an efficient system runtime to solve many of the new scheduling challenges arising out of our models and optimize the performance across latency, energy efficiency, and throughput. Taskflow has demonstrated promising performance on both micro-benchmarks and real-world applications. As an example, Taskflow solved a large-scale circuit placement problem up to 17% faster, with <inline-formula xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink"> <tex-math notation="LaTeX">$1.3\times $ </tex-math></inline-formula> fewer memory, <inline-formula xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink"> <tex-math notation="LaTeX">$2.1\times $ </tex-math></inline-formula> less power consumption, and <inline-formula xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink"> <tex-math notation="LaTeX">$2.9\times $ </tex-math></inline-formula> higher throughput than two industrial-strength systems, oneTBB and StarPU, on a machine of 40 CPUs and 4 GPUs.

Topics & Concepts

NotationComputer scienceLatency (audio)Parallel computingTask (project management)GraphProgramming languageTheoretical computer scienceMathematicsArithmeticEngineeringSystems engineeringTelecommunicationsParallel Computing and Optimization TechniquesAdvanced Data Storage TechnologiesCloud Computing and Resource Management
Taskflow: A General-Purpose Parallel and Heterogeneous Task Programming System | Litcius