Pygion: Flexible, Scalable Task-Based Parallelism with Python']Python

被引:9
|
作者
Slaughter, Elliott [1 ]
Aiken, Alex [2 ]
机构
[1] SLAC Natl Accelerator Lab, Menlo Pk, CA 94025 USA
[2] Stanford Univ, Stanford, CA 94305 USA
关键词
task-based parallelism; Pygion; Legion; !text type='Python']Python[!/text;
D O I
10.1109/PAW-ATM49560.2019.00011
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Dynamic languages provide the flexibility needed to implement expressive support for task-based parallel programming constructs. We present Pygion, a Python interface for the Legion task-based programming system, and show that it can provide features comparable to Regent, a statically typed programming language with dedicated support for the Legion programming model. Furthermore, we show that the dynamic nature of Python permits the implementation of several key optimizations (index launches, futures, mapping) currently implemented in the Regent compiler. Together these features enable Pygion code that is comparable in expressiveness but more flexible than Regent, and substantially more concise, less error prone, and easier to use than C++ Legion code. Pygion is designed to interoperate with Regent and can use Regent to generate high-performance CPU and GPU kernel implementations. We show that, in combination with high-performance kernels written in Regent, Pygion is able to achieve efficient, scalable execution on up to 512 nodes of the heterogeneous supercomputer Piz Daint.
引用
收藏
页码:58 / 72
页数:15
相关论文
共 50 条
  • [1] A Deep Dive into Task-Based Parallelism in Python']Python
    Ruys, William
    Lee, Hochan
    You, Bozhi
    Talati, Shreya
    Park, Jaeyoung
    Almgren-Bell, James
    Yan, Yineng
    Fernando, Milinda
    Biros, George
    Erez, Mattan
    Burtscher, Martin
    Rossbach, Christopher J.
    Pingali, Keshav
    Gligoric, Milos
    [J]. 2024 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS, IPDPSW 2024, 2024, : 1147 - 1149
  • [2] torcpy: Supporting task parallelism in Python']Python
    Hadjidoukas, P. E.
    Bartezzaghi, A.
    Scheidegger, F.
    Istrate, R.
    Bekas, C.
    Malossi, A. C., I
    [J]. SOFTWAREX, 2020, 12
  • [3] Asynchronous Execution of Python']Python Code on Task-Based Runtime Systems
    Tohid, R.
    Wagle, Bibek
    Shirzad, Shahrzad
    Diehl, Patrick
    Serio, Adrian
    Kheirkhahan, Alireza
    Amini, Parsa
    Williams, Katy
    Isaacs, Kate
    Huck, Kevin
    Brandt, Steven
    Kaiser, Hartmut
    [J]. PROCEEDINGS OF 2018 IEEE/ACM 4TH INTERNATIONAL WORKSHOP ON EXTREME SCALE PROGRAMMING MODELS AND MIDDLEWARE (ESPM2 2018), 2018, : 37 - 45
  • [4] Scalable Bootstrapping for Python']Python
    Birsinger, Peter
    Xia, Richard
    Fox, Armando
    [J]. PROCEEDINGS OF THE 22ND ACM INTERNATIONAL CONFERENCE ON INFORMATION & KNOWLEDGE MANAGEMENT (CIKM'13), 2013, : 2441 - 2446
  • [5] APPy: Annotated Parallelism for Python']Python on GPUs
    Zhou, Tong
    Shirako, Jun
    Sarkar, Vivek
    [J]. PROCEEDINGS OF THE 33RD ACM SIGPLAN INTERNATIONAL CONFERENCE ON COMPILER CONSTRUCTION, CC 2024, 2024, : 113 - 125
  • [6] Profiling and optimization of Python']Python-based social sciences applications on HPC systems by means of task and data parallelism
    Szustak, Lukasz
    Lawenda, Marcin
    Arming, Sebastian
    Bankhamer, Gregor
    Schweimer, Christoph
    Elsaesser, Robert
    [J]. FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE, 2023, 148 : 623 - 635
  • [7] A Python']Python-based IRAF task parameter editor
    De la Peña, MD
    [J]. ASTRONOMICAL DATA ANALYSIS SOFTWARE AND SYSTEMS IX, 2000, 216 : 63 - 66
  • [8] Megaman: Scalable Manifold Learning in Python']Python
    McQueen, James
    Meila, Marina
    VanderPlas, Jacob
    Zhang, Zhongyue
    [J]. JOURNAL OF MACHINE LEARNING RESEARCH, 2016, 17
  • [9] Scalable Parallel Programming in Python']Python with Parsl
    Babuji, Yadu
    Woodard, Anna
    Li, Zhuozhao
    Katz, Daniel S.
    Clifford, Ben
    Foster, Ian
    Wilde, Michael
    Chard, Kyle
    [J]. PEARC '19: PROCEEDINGS OF THE PRACTICE AND EXPERIENCE IN ADVANCED RESEARCH COMPUTING ON RISE OF THE MACHINES (LEARNING), 2019,
  • [10] A scalable elliptic solver with task-based parallelism for the SpECTRE numerical relativity code
    Vu, Nils L.
    Pfeiffer, Harald P.
    Bonilla, Gabriel S.
    Deppe, Nils
    Hebert, Francois
    Kidder, Lawrence E.
    Lovelace, Geoffrey
    Moxon, Jordan
    Scheel, Mark A.
    Teukolsky, Saul A.
    Throwe, William
    Wittek, Nikolas A.
    Wlodarczyk, Tom
    [J]. PHYSICAL REVIEW D, 2022, 105 (08)