Presentation

P36 - Pyccel: Automating Translation of Python Prototypes to C/Fortran Production Codes
PosterPDF
Presenter
DescriptionPython is a widely popular programming language, valued for its simplicity, ease of learning, and vast ecosystem of packages, making it ideal for scientific applications. However, its execution speed is a major limitation compared to low-level languages. We present Pyccel, an intuitive transpiler that helps researchers accelerate their Python developments and generate recognisable human-readable Fortran or C code. With the release of Pyccel 2.0 the entry barrier for users has been decreased further. While Pyccel's clean error messages and simple Python-compatible type annotations already allowed researchers to quickly improve their execution times, the addition of support for common containers and classes (a feature often unsupported by tools like Numba, Jax or Pythran) reduces the work required to identify and isolate translatable compute kernels. We will present benchmarks showing speed-ups of around 50x compared to the original Python code as well as examples taken from the PyGyro code, where classes simplify large-scale simulations by improving code readability and maintainability. By empowering researchers to harness the performance of low-level languages without leaving the Python ecosystem, Pyccel narrows the chasm that researchers face when making the jump from prototype to high-performance computing.
TimeTuesday, June 1710:30 - 11:00 CEST
LocationCampussaal - Plenary Room
Event Type
PASC Poster