Compiler-Based Timing For Extremely Fine-Grain Preemptive Parallelism

被引:6
|
作者
Ghosh, Souradip [1 ]
Cuevas, Michael [1 ]
Campanoni, Simone [1 ]
Dinda, Peter [1 ]
机构
[1] Northwestern Univ, Dept Comp Sci, Evanston, IL 60208 USA
基金
美国国家科学基金会;
关键词
timing; preemptive scheduling; line-granularity parallelism; IMPLEMENTATION;
D O I
10.1109/SC41405.2020.00057
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
In current operating system kernels and run-time systems, liming is based on hardware timer interrupts, introducing inherent overheads that limit granularity. For example, the scheduling quantum of preemptive threads is limited, resulting in this abstraction being restricted to coarse-grain parallelism. Compiler-based timing replaces interrupts from the hardware timer with callbacks from compiler-injected code. We describe a system that achieves low-overhead timing using whole-program compiler transformations and optimizations combined with kernel and run-time support. A key novelty is new static analyses that achieve predictable, periodic run-time behavior from the transformed code, regardless of control-flow path. We transform the code of a kernel and run-time system to use compiler-based timing and leverage the resulting fine-grain timing to extend an implementation of fibers (cooperatively scheduled threads), attaining what is effectively preemptive scheduling. The result combines the fine granularity of the cooperative fiber model with the ease of programming of the preemptive thread model.
引用
收藏
页数:15
相关论文
共 50 条
  • [1] Architectures for fine-grain parallelism
    不详
    EXPLOITATION OF FINE-GRAIN PARALLELISM, 1995, 942 : 8 - 17
  • [2] FINE-GRAIN PARALLELISM WITH MINIMAL HARDWARE SUPPORT - A COMPILER-CONTROLLED THREADED ABSTRACT MACHINE
    CULLER, DE
    SAH, A
    SCHAUSER, KE
    VONEICKEN, T
    WAWRZYNEK, J
    SIGPLAN NOTICES, 1991, 26 (04): : 164 - 175
  • [3] AGGLOMERATION OF FINE-GRAIN AND EXTREMELY FINE-GRAIN COAL - NATURE AND COMPOSITION OF BINDERS
    SCHAFER, HG
    ERDOL & KOHLE ERDGAS PETROCHEMIE, 1987, 40 (12): : 521 - 526
  • [4] Architectural support for exploitation of fine-grain parallelism
    不详
    EXPLOITATION OF FINE-GRAIN PARALLELISM, 1995, 942 : 32 - 37
  • [5] Code and data partitioning for fine-grain parallelism
    Chu, Michael L.
    Mahlke, Scott A.
    ACM SIGPLAN NOTICES, 2007, 42 (07) : 161 - 163
  • [6] Code and Data Partitioning for Fine-grain Parallelism
    Chu, Michael L.
    Mahlke, Scott A.
    LCTES'07: PROCEEDINGS OF THE 2007 ACM SIGPLAN-SIGBED CONFERENCE ON LANGUAGES, COMPILERS, AND TOOLS FOR EMBEDDED SYSTEMS, 2007, : 161 - 163
  • [7] Unlocking Fine-Grain Parallelism for AIG Rewriting
    Possani, Vinicius
    Lu, Yi-Shan
    Mishchenko, Alan
    Pingali, Keshav
    Ribas, Renato
    Reis, Andre
    2018 IEEE/ACM INTERNATIONAL CONFERENCE ON COMPUTER-AIDED DESIGN (ICCAD) DIGEST OF TECHNICAL PAPERS, 2018,
  • [8] Characterizing Fine-Grain Parallelism on Modern Multicore Platform
    Chen, Xuhao
    Chen, Wei
    Li, Jiawen
    Zheng, Zhong
    Shen, Li
    Wang, Zhiying
    2011 IEEE 17TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS (ICPADS), 2011, : 941 - 946
  • [9] Exploiting Fine-Grain Parallelism in Recursive LU Factorization
    Dongarra, Jack
    Faverge, Mathieu
    Ltaief, Hatem
    Luszczek, Piotr
    APPLICATIONS, TOOLS AND TECHNIQUES ON THE ROAD TO EXASCALE COMPUTING, 2012, 22 : 429 - 436
  • [10] Exploiting fine-grain thread parallelism on multicore architectures
    Hadjidoukas, P. E.
    Philos, G. Ch.
    Dimakopoulos, V. V.
    SCIENTIFIC PROGRAMMING, 2009, 17 (04) : 309 - 323