Skip to main content
QUICK REVIEW

[论文解读] Revisiting Conventional Task Schedulers to Exploit Asymmetry in ARM big.LITTLE Architectures for Dense Linear Algebra

Luis Costero, Francisco D. Igual|arXiv (Cornell University)|Sep 7, 2015
Parallel Computing and Optimization Techniques参考文献 11被引用 3
一句话总结

本文提出一种新颖方法,通过在库层隐藏硬件异构性,利用ARM big.LITTLE架构中的任务级并行性来优化密集线性代数(DLA)计算。该方法不修改任务调度器,而是使用感知异构性的BLIS内核,将工作负载划分到虚拟核心上执行,从而在Exynos 5422 SoC上实现比传统调度器和专用异构感知调度器更高的性能。

ABSTRACT

Dealing with asymmetry in the architecture opens a plethora of questions from the perspective of scheduling task-parallel applications, and there exist early attempts to address this problem via ad-hoc strategies embedded into a runtime framework. In this paper we take a different path, which consists in addressing the complexity of the problem at the library level, via a few asymmetry-aware fundamental kernels, hiding the architecture heterogeneity from the task scheduler. For the specific domain of dense linear algebra, we show that this is not only possible but delivers much higher performance than a naive approach based on an asymmetry-oblivious scheduler. Furthermore, this solution also outperforms an ad-hoc asymmetry-aware scheduler furnished with sophisticated scheduling techniques.

研究动机与目标

  • 解决在异构ARM big.LITTLE架构上高效调度任务并行DLA工作负载的挑战。
  • 通过将异构性处理从调度器层下放至库层,降低运行时调度的复杂性。
  • 证明当与感知异构性的DLA内核配合时,传统、不感知异构性的任务调度器可实现更优性能。
  • 在真实硬件上评估该方法相对于标准和专用异构感知调度器的性能表现。
  • 在无需修改的前提下,实现现有高性能优化任务调度器在异构多核系统中的复用。

提出的方法

  • 将物理核心聚合为对称的虚拟核心(VCs),向任务调度器呈现统一的对称视图。
  • 设计感知异构性的BLIS内核,将DLA操作划分为细粒度计算,分别针对快速(big)和慢速(LITTLE)核心进行优化。
  • 使用OmpSs运行时环境进行传统任务调度,同时依赖库层将任务映射到合适的内核类型。
  • 在BLIS库中实现专为ARM big.LITTLE SoC优化的数据并行BLAS-3接口。
  • 采用混合策略:在早期高度并行的阶段使用优先级感知调度,在后期低并发阶段切换为基于虚拟核心的执行。
  • 使用Cholesky分解作为代表性DLA操作,在配备双集群(Cortex-A15和A7)的Exynos 5422 SoC上评估性能。

实验结果

研究问题

  • RQ1当与感知异构性的DLA库配合时,传统、不感知异构性的任务调度器是否能在big.LITTLE系统上实现高性能?
  • RQ2与临时扩展的调度器相比,将异构性处理从运行时下放至库层是否能提升性能?
  • RQ3在DLA计算的不同阶段,虚拟核心抽象的性能与优先级感知、异构感知调度器相比如何?
  • RQ4在无需修改的前提下,现有任务调度器在异构架构上可复用到何种程度?
  • RQ5在big.LITTLE系统上,采用不同调度策略时,工作负载不平衡和空闲时间对性能的影响如何?

主要发现

  • 所提出的使用感知异构性BLIS内核的方法在Exynos 5422 SoC上进行Cholesky分解时,性能优于专用异构感知调度器(Botlev-OmpSs)。
  • 传统OmpSs调度器配合感知异构性的BLIS内核,在工作线程上实现17.47%的空闲时间,而Botlev-OmpSs配置下LITTLE核心为20.84%,big核心为19.26%,表明负载均衡更优。
  • 传统调度器配合感知异构性内核的平均利用率在所有线程上达到82.89%,而所提方法为94.90%,但后者因内核级优化更优而实现了更高的整体性能。
  • 性能提升主要归因于BLAS-3内核在库层的优化,使得细粒度计算能高效映射到合适的内核类型。
  • 该方法可在不修改的前提下复用现有、高度优化的任务调度器,同时仍能有效利用硬件异构性。
  • 混合策略——在早期高并发阶段使用优先级感知调度,在后期阶段切换为基于虚拟核心的执行——被证明有效且具有互补性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。