Basermann, Achim and Röhrig-Zöllner, Melven and Illmer, Joachim (2015) Performance and productivity of parallel python programming: a study with a CFD test case. In: PyHPC '15 Proceedings of the 5th Workshop on Python for High-Performance and Scientific Computing. ACM New York. PyHPC '15: Proceedings of the 5th Workshop on Python for High-Performance and Scientific Computing; Workshop during SC15: The International Conference for High Performance Computing, Networking, Storage and Analysis, 15.-20. Nov. 2015, Austin, Texas, United States of America. doi: 10.1145/2835857.2835859. ISBN 978 1 4503 4010 6.
![]() |
PDF (Proceedingsbeitrag, 10 Seiten)
1MB |
![]() |
PDF (Vortrag)
3MB |
Official URL: http://dl.acm.org/citation.cfm?id=2835859
Abstract
The programming language Python is widely used to create rapidly compact software. However, compared to low-level programming languages like C or Fortran low performance is preventing its use for HPC applications. Efficient parallel programming of multi-core systems and graphic cards is generally a complex task. Python with add-ons might provide a simple approach to program those systems. This paper evaluates the performance of Python implementations with different libraries and compares it to implementations in C or Fortran. As a test case from the field of computational fluid dynamics (CFD) a part of a rotor simulation code was selected. Fortran versions of this code were available for use on single-core, multi-core and graphic-card systems. For all these computer systems, multiple compact versions of the code were implemented in Python with different libraries. For performance analysis of the rotor simulation kernel, a performance model was developed. This model was then employed to assess the performance reached with the different implementations. Performance tests showed that an implementation with Python syntax is six times slower than Fortran on single-core systems. The performance on multi-core systems and graphic cards is about a tenth of the Fortran implementations. A higher performance was achieved by a hybrid implementation in C and Python using Cython. The latter reached about half of the performance of the Fortran implementation.
Item URL in elib: | https://elib.dlr.de/100612/ | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Document Type: | Conference or Workshop Item (Speech) | ||||||||||||
Title: | Performance and productivity of parallel python programming: a study with a CFD test case | ||||||||||||
Authors: |
| ||||||||||||
Date: | 2015 | ||||||||||||
Journal or Publication Title: | PyHPC '15 Proceedings of the 5th Workshop on Python for High-Performance and Scientific Computing | ||||||||||||
Refereed publication: | Yes | ||||||||||||
Open Access: | Yes | ||||||||||||
Gold Open Access: | No | ||||||||||||
In SCOPUS: | No | ||||||||||||
In ISI Web of Science: | No | ||||||||||||
DOI: | 10.1145/2835857.2835859 | ||||||||||||
Editors: |
| ||||||||||||
Publisher: | ACM New York | ||||||||||||
ISBN: | 978 1 4503 4010 6 | ||||||||||||
Status: | Published | ||||||||||||
Keywords: | Parallel programming; Python; performance; productivity; helicopter simulation kernel; freewake; performance analysis; performance modelling; multi-core CPU; GPU | ||||||||||||
Event Title: | PyHPC '15: Proceedings of the 5th Workshop on Python for High-Performance and Scientific Computing; Workshop during SC15: The International Conference for High Performance Computing, Networking, Storage and Analysis | ||||||||||||
Event Location: | Austin, Texas, United States of America | ||||||||||||
Event Type: | international Conference | ||||||||||||
Event Dates: | 15.-20. Nov. 2015 | ||||||||||||
Organizer: | SIGHPC: ACM Special Interest Group on High Performance Computing; SC15: The International Conference for High Performance Computing, Networking, Storage and Analysis | ||||||||||||
HGF - Research field: | Aeronautics, Space and Transport | ||||||||||||
HGF - Program: | Space | ||||||||||||
HGF - Program Themes: | Space System Technology | ||||||||||||
DLR - Research area: | Raumfahrt | ||||||||||||
DLR - Program: | R SY - Space System Technology | ||||||||||||
DLR - Research theme (Project): | R - Vorhaben SISTEC (old) | ||||||||||||
Location: | Köln-Porz | ||||||||||||
Institutes and Institutions: | Institut of Simulation and Software Technology > Distributed Systems and Component Software | ||||||||||||
Deposited By: | Basermann, Dr.-Ing. Achim | ||||||||||||
Deposited On: | 09 Dec 2015 16:21 | ||||||||||||
Last Modified: | 31 Jul 2019 19:57 |
Repository Staff Only: item control page