A scheduling framework for general-purpose parallel languages

被引:4
|
作者
Fluet, Matthew [1 ]
Rainey, Mike [2 ]
Reppy, John [2 ]
机构
[1] Toyota Technol Inst, Chicago, IL 60637 USA
[2] Univ Chicago, Chicago, IL 60637 USA
关键词
languages; performance; heterogeneous parallel languages; scheduling; compilers; and run-time systems;
D O I
10.1145/1411203.1411239
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The trend in microprocessor design toward multicore and manycore processors means that future performance gains in software will largely come from harnessing parallelism. To realize such gains, we need languages and implementations that can enable parallelism at many different levels. For example, an application might use both explicit threads to implement course-grain parallelism for independent tasks and implicit threads for fine-grain data-parallel computation over a large array. An important aspect of this requirement is supporting a wide range of different scheduling mechanisms for parallel computation. In this paper, we describe the scheduling framework that we have designed and implemented for Manticore, a strict parallel functional language. We take a micro-kernel approach in our design: the compiler and runtime support a small collection of scheduling primitives upon which complex scheduling policies can be implemented. This framework is extremely flexible and can support a wide range of different scheduling policies. It also supports the nesting of schedulers, which is key to both supporting multiple scheduling policies in the same application and to hierarchies of speculative parallel computations. In addition to describing our framework, we also illustrate its expressiveness with several popular scheduling techniques. We present a ( mostly) modular approach to extending our schedulers to support cancellation. This mechanism is essential for implementing eager and speculative parallelism. We finally evaluate our framework with a series of benchmarks and an analysis.
引用
下载
收藏
页码:241 / 252
页数:12
相关论文
共 50 条
  • [41] General-purpose neural network mapping scheduling genetic algorithm
    Jisuanji Yanjiu yu Fazhan, 11 (872-876):
  • [42] Scheduling algorithm for general-purpose liquid handling and automation platform
    Tian H.
    Cheng W.
    Wang J.
    Tang Y.
    Huazhong Keji Daxue Xuebao (Ziran Kexue Ban)/Journal of Huazhong University of Science and Technology (Natural Science Edition), 2024, 52 (05): : 130 - 135
  • [43] Comparing General-Purpose and Domain-Specific Languages: An Empirical Study
    Kosar, Tomaz
    Oliveira, Nuno
    Mernik, Marjan
    Varanda Pereira, Maria Joao
    Crepinsek, Matej
    da Cruz, Daniela
    Henriques, Pedro Rangel
    COMPUTER SCIENCE AND INFORMATION SYSTEMS, 2010, 7 (02) : 247 - 264
  • [44] MODELING OF MULTIBODY SYSTEMS FOR CONTROLS USING GENERAL-PURPOSE SIMULATION LANGUAGES
    ZEID, AA
    OVERHOLT, JL
    BECK, RR
    SIMULATION, 1994, 62 (01) : 7 - 19
  • [45] General-Purpose Languages for Blockchain Smart Contracts Development: A Comprehensive Study
    Olivieri, Luca
    Arceri, Vincenzo
    Chachar, Badaruddin
    Negrini, Luca
    Tagliaferro, Fabio
    Spoto, Fausto
    Ferrara, Pietro
    Cortesi, Agostino
    IEEE Access, 2024, 12 : 166855 - 166869
  • [46] VLSI LOGIC AND FAULT SIMULATION ON GENERAL-PURPOSE PARALLEL COMPUTERS
    MUELLERTHUNS, RB
    SAAB, DG
    DAMIANO, RF
    ABRAHAM, JA
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 1993, 12 (03) : 446 - 460
  • [47] H-BSP - A GENERAL-PURPOSE PARALLEL COMPUTING ENVIRONMENT
    CHEATHAM, T
    FAHMY, A
    STEFANESCU, DC
    INFORMATION PROCESSING '94, VOL I: TECHNOLOGY AND FOUNDATIONS, 1994, 51 : 515 - 520
  • [48] FASTCRYPTO: PARALLEL AES PIPELINES EXTENSION FOR GENERAL-PURPOSE PROCESSORS
    Soliman, Mostafa I.
    Abozaid, Ghada Y.
    PROCEEDINGS OF THE 2ND INTERNATIONAL CONFERENCE ON ADVANCED COMPUTER THEORY AND ENGINEERING (ICACTE 2009), VOLS 1 AND 2, 2009, : 937 - 944
  • [49] Taskflow: A General-Purpose Parallel and Heterogeneous Task Programming System
    Huang, Tsung-Wei
    Lin, Dian-Lun
    Lin, Yibo
    Lin, Chun-Xun
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2022, 41 (05) : 1448 - 1452
  • [50] General-purpose definition
    Emerson, DM
    DATAMATION, 1995, 41 (23): : 14 - 14