Minimizing DAG Utilization by Exploiting SMT

Minimizing DAG Utilization by Exploiting SMT
复制标题

DOI:
10.1109/rtas54340.2022.00029
复制
发表时间:
2022-05
期刊:
2022 IEEE 28th Real-Time and Embedded Technology and Applications Symposium (RTAS)
影响因子:
--
通讯作者:
S. Osborne;Joshua Bakita;Jingyuan Chen;Tyler Yandrofski;James H. Anderson
S. Osborne;Joshua Bakita;Jingyuan Chen;Tyler Yandrofski;James H. Anderson
中科院分区:
其他
文献类型:
--
作者:
S. Osborne;Joshua Bakita;Jingyuan Chen;Tyler Yandrofski;James H. Anderson

文献摘要

相似文献

并行工作负载通常按照定向的无环图(DAG)建模。尽管DAG调度是一个重要的工具,但它会受到容量损失的困扰。看到一半平台没有使用并不少见。在这里,这种损失是从一个新方向攻击的:在将计算核心分配给DAG之前,请减少人均利用率。具体而言,同时多线程(SMT)用于在同一物理计算核心上并行安排DAG任务的单个节点。给出了一个优化程序,该程序将SMT应用于DAG,以最大程度地减少总体利用率而不会损害正确性。使用大规模的合成DAG和案例研究评估了单个DAG和DAG系统的结果。该程序的最佳使用可以减少DAG利用率,并且在最佳情况下需要将核心计数降低40%以上,而在近一半的情况下,核心计数可减少25%。考虑了优化程序的运行时要求,并提供了一个可调参数,以在运行时和最佳性之间进行权衡,即使有500个节点的DAG也可以受益。
Parallel workloads are commonly modeled as directed acyclic graphs (DAGs). While DAG scheduling is an important tool, it is plagued by capacity loss; it is not uncommon to see half of a platform go unused. Here this loss is attacked from a new direction: reducing per-DAG utilization prior to assigning computing cores to a DAG. Specifically, simultaneous multithreading (SMT) is used to schedule individual nodes of a DAG task in parallel on the same physical computing core. An optimization program is given that applies SMT to a DAG in a way that minimizes total utilization without compromising correctness. Results for both individual DAGs and systems of DAGs are evaluated using both a large-scale study of synthetic DAGs and a case study. Optimal use of the program can reduce DAG utilization and required core counts by over 40% in the best cases and by 25% in nearly half of cases. Runtime requirements for the optimization program are considered, and a tunable parameter is provided to make tradeoffs between runtime and optimality, allowing even DAGs with 500 nodes to benefit.