当前位置: X-MOL 学术arXiv.cs.OS › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Bringing Inter-Thread Cache Benefits to Federated Scheduling -- Extended Results & Technical Report
arXiv - CS - Operating Systems Pub Date : 2020-02-28 , DOI: arxiv-2002.12516
Corey Tessler, Venkata P. Modekurthy, Nathan Fisher, Abusayeed Saifullah

Multiprocessor scheduling of hard real-time tasks modeled by directed acyclic graphs (DAGs) exploits the inherent parallelism presented by the model. For DAG tasks, a node represents a request to execute an object on one of the available processors. In one DAG task, there may be multiple execution requests for one object, each represented by a distinct node. These distinct execution requests offer an opportunity to reduce their combined cache overhead through coordinated scheduling of objects as threads within a parallel task. The goal of this work is to realize this opportunity by incorporating the cache-aware BUNDLE-scheduling algorithm into federated scheduling of sporadic DAG task sets. This is the first work to incorporate instruction cache sharing into federated scheduling. The result is a modification of the DAG model named the DAG with objects and threads (DAG-OT). Under the DAG-OT model, descriptions of nodes explicitly include their underlying executable object and number of threads. When possible, nodes assigned the same executable object are collapsed into a single node; joining their threads when BUNDLE-scheduled. Compared to the DAG model, the DAG-OT model with cache-aware scheduling reduces the number of cores allocated to individual tasks by approximately 20 percent in the synthetic evaluation and up to 50 percent on a novel parallel computing platform implementation. By reducing the number of allocated cores, the DAG-OT model is able to schedule a subset of previously infeasible task sets.

中文翻译:

为联合调度带来线程间缓存优势——扩展结果和技术报告

由有向无环图 (DAG) 建模的硬实时任务的多处理器调度利用了模型呈现的固有并​​行性。对于 DAG 任务,节点表示在可用处理器之一上执行对象的请求。在一个 DAG 任务中,一个对象可能有多个执行请求,每个请求由一个不同的节点表示。这些不同的执行请求提供了一个机会,通过将对象作为并行任务中的线程进行协调调度来减少它们的组合缓存开销。这项工作的目标是通过将缓存感知 BUNDLE 调度算法合并到零星 DAG 任务集的联合调度中来实现这一机会。这是将指令缓存共享纳入联邦调度的第一项工作。结果是对 DAG 模型进行了修改,该模型名为具有对象和线程的 DAG (DAG-OT)。在 DAG-OT 模型下,节点的描述明确包括其底层可执行对象和线程数。在可能的情况下,分配了相同可执行对象的节点被折叠成一个节点;在 BUNDLE-scheduled 时加入他们的线程。与 DAG 模型相比,具有缓存感知调度的 DAG-OT 模型在综合评估中将分配给单个任务的内核数量减少了大约 20%,在新的并行计算平台实现中减少了 50%。通过减少分配的内核数量,DAG-OT 模型能够调度以前不可行的任务集的子集。节点的描述明确包括它们的底层可执行对象和线程数。在可能的情况下,分配了相同可执行对象的节点被折叠成一个节点;在 BUNDLE-scheduled 时加入他们的线程。与 DAG 模型相比,具有缓存感知调度的 DAG-OT 模型在综合评估中将分配给单个任务的内核数量减少了大约 20%,在新的并行计算平台实现中减少了 50%。通过减少分配的内核数量,DAG-OT 模型能够调度以前不可行的任务集的子集。节点的描述明确包括它们的底层可执行对象和线程数。在可能的情况下,分配了相同可执行对象的节点被折叠成一个节点;在 BUNDLE-scheduled 时加入他们的线程。与 DAG 模型相比,具有缓存感知调度的 DAG-OT 模型在综合评估中将分配给单个任务的内核数量减少了大约 20%,在新的并行计算平台实现中减少了 50%。通过减少分配的内核数量,DAG-OT 模型能够调度以前不可行的任务集的子集。具有缓存感知调度的 DAG-OT 模型在综合评估中将分配给单个任务的内核数量减少了大约 20%,在新的并行计算平台实现中减少了 50%。通过减少分配的内核数量,DAG-OT 模型能够调度以前不可行的任务集的子集。具有缓存感知调度的 DAG-OT 模型在综合评估中将分配给单个任务的内核数量减少了大约 20%,在新的并行计算平台实现中减少了 50%。通过减少分配的内核数量,DAG-OT 模型能够调度以前不可行的任务集的子集。
更新日期:2020-03-02
down
wechat
bug