Affiliation:
1. Intel Corp., Santa Clara, CA
Abstract
Chip multiprocessors (CMPs) are now commonplace, and the number of cores on a CMP is likely to grow steadily. However, in order to harness the additional compute resources of a CMP, applications must expose their thread-level parallelism to the hardware. One common approach to doing this is to decompose a program into parallel "tasks" and allow an underlying software layer to schedule these tasks to different threads. Software task scheduling can provide good parallel performance as long as tasks are large compared to the software overheads.
We examine a set of applications from an important emerging domain: Recognition, Mining, and Synthesis (RMS). Many RMS applications are compute-intensive and have abundant thread-level parallelism, and are therefore good targets for running on a CMP. However, a significant number have small tasks for which software task schedulers achieve only limited parallel speedups.
We propose Carbon, a hardware technique to accelerate dynamic task scheduling on scalable CMPs. Carbon has relatively simple hardware, most of which can be placed far from the cores. We compare Carbon to some highly tuned software task schedulers for a set of RMS benchmarks with small tasks. Carbon delivers significant performance improvements over the best software scheduler: on average for 64 cores, 68% faster on a set of loop-parallel benchmarks, and 109% faster on aset of task-parallel benchmarks.
Publisher
Association for Computing Machinery (ACM)
Cited by
86 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. HASIIL: Hardware-Assisted Scheduling to Improve IPC Latency in Linux;Proceedings of the 21st ACM International Conference on Computing Frontiers;2024-05-07
2. Hardware Assist for Linux IPC on an FPGA Platform;Proceedings of the 21st ACM International Conference on Computing Frontiers;2024-05-07
3. HW-FUTEX: Hardware-Assisted Futex Syscall;IEEE Transactions on Very Large Scale Integration (VLSI) Systems;2024-01
4. Enabling HW-Based Task Scheduling in Large Multicore Architectures;IEEE Transactions on Computers;2024-01
5. Runtime support for automatic placement of workloads on heterogeneous processors;2023 IEEE 16th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC);2023-12-18