论文标题

任务流:轻巧的平行和异构任务图计算系统

Taskflow: A Lightweight Parallel and Heterogeneous Task Graph Computing System

论文作者

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

论文摘要

TaskFlow旨在使用基于轻量任务图的方法来简化并行和异质应用的构建。 TaskFlow引入了表达的任务图编程模型,以帮助开发人员在异质计算平台上实施并行和异构分解策略。我们的编程模型将自己区分为一类非常通用的任务图并行性,并具有刻画控制流,以实现端到端并行优化。为了通过高性能支持我们的模型,我们设计了一个高效的系统运行时,该运行时解决了我们的模型引起的许多新调度挑战,并优化了延迟,能源效率和吞吐量的性能。我们已经证明了在现实世界应用程序中任务流的有希望的性能。例如,在40 CPU和4 GPU的机器上,任务流求解了比工业系统OnETBB更快29%,记忆力少1.5倍,内存少1.9倍。我们已经打开了任务流的来源,并将其部署到开源社区中的大量用户。

Taskflow aims to streamline the building of parallel and heterogeneous applications using a lightweight task graph-based approach. Taskflow introduces an expressive task graph programming model to assist developers in the implementation of parallel and heterogeneous decomposition strategies on a heterogeneous computing platform. Our programming model distinguishes itself as a very general class of task graph parallelism with in-graph control flow to enable end-to-end parallel optimization. To support our model with high performance, we design an efficient system runtime that solves many of the new scheduling challenges arising out of our models and optimizes the performance across latency, energy efficiency, and throughput. We have demonstrated the promising performance of Taskflow in real-world applications. As an example, Taskflow solves a large-scale machine learning workload up to 29% faster, 1.5x less memory, and 1.9x higher throughput than the industrial system, oneTBB, on a machine of 40 CPUs and 4 GPUs. We have opened the source of Taskflow and deployed it to large numbers of users in the open-source community.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源