首页|Productivity, Portability, Performance, and Reproducibility: Data-Centric Python

Productivity, Portability, Performance, and Reproducibility: Data-Centric Python

扫码查看
Python has become the de facto language for scientific computing. Programming in Python is highly productive, mainly due to its rich science-oriented software ecosystem built around the NumPy module. As a result, the demand for Python support in High-Performance Computing (HPC) has skyrocketed. However, the Python language itself does not necessarily offer high performance. This work presents a workflow that retains Python’s high productivity while achieving portable performance across different architectures. The workflow’s key features are HPC-oriented language extensions and a set of automatic optimizations powered by a data-centric intermediate representation. We show performance results and scaling across CPU, GPU, FPGA, and the Piz Daint supercomputer (up to 23,328 cores), with 2.47x and 3.75x speedups over previous-best solutions, first-ever Xilinx and Intel FPGA results of annotated Python, and up to 93.16% scaling efficiency on 512 nodes. Our benchmarks were reproduced in the Student Cluster Competition (SCC) during the Supercomputing Conference (SC) 2022. We present and discuss the student teams’ results.

ProductivityCodesHigh performance computingSemanticsComputer architectureSupercomputersSoftwareField programmable gate arraysOptimizationPython

Alexandros Nikolaos Ziogas、Timo Schneider、Tal Ben-Nun、Alexandru Calotoiu、Tiziano De Matteis、Johannes de Fine Licht、Luca Lavarini、Torsten Hoefler

展开 >

Department of Information Technology and Electrical Engineering, ETH Zurich, Zurich, Switzerland

Department of Computer Science, ETH Zurich, Zurich, Switzerland

Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA

Department of Computer Science, Vrije Universiteit Amsterdam, Amsterdam, Netherlands

NextSilicon, Zurich, Switzerland

1plusX, Zurich, Switzerland

展开 >

2025

IEEE transactions on parallel and distributed systems

IEEE transactions on parallel and distributed systems

SCI
ISSN:
年,卷(期):2025.36(5)
  • 79