Simplifying the access and usability of High-Performance Computing
- 18 Medien
- hochgeladen 16. Juli 2021
In the past few years, HPC computing has also gained importance in groups of users that in the past did not belong to the classic HPC users, not least because of the increasing popularity of Deep Learning. However, the use of HPC systems has not changed for a long time: Access is often still via the console, jobs are written in Bash scripts - and the most popular programming languages are still C or FORTRAN. These hurdles make it difficult to use HPC systems, especially for new users. In this talk we will show how Python can be used as a programming language for parallel systems, how e.g., GPUs can be programmed using Numba, or applications can be parallelized using DASK. It will be shown how the performance compares to the classical C or MPI approach. Even though in many areas the performance of Python is very good, in many places the interpreter overhead is still a problem even if the computationally intensive parts are executed directly on the CPU or GPU. This is especially a problem for strong scaling. Also, the access to HPC systems must be simplified. Access via Jupyter notebooks or graphical user interfaces simplify the access and reduce the mistakes that especially beginners make. There are also good opportunities for teaching to simplify access to the systems. The use of such interfaces allows only the use of a limited range of functions - this is however for most users of the systems, completely sufficient.