Z03
Code development and optimization: harnessing the power of massively parallel computer architectures
Summary
Many projects in the collaborative research center, especially the theory ones, rely heavily on nu- merical calculations. Z03 is a service project where a research software engineer will help us i) in education, ii) in establishing reproducible numerical workflows, iii) in developing program packages, iv) in code optimization, v) in numerical methods and vi) in acquiring supercomputer resources. Good and efficient programming is the key to sustainable code development. Quality management proce- dures such as continuous integration that support automated workflows, is the key for keeping the software project functional and for preserving the embedded knowledge over generations. Being also a research oriented position, a further goal of the Z03 project is to keep up with progress in the domain of computer sciences, both at the hardware and software levels. At the hardware level, dif- ferent generations of supercomputers will come with different architectures. We will have to design our programs intelligently so as to ensure that they will run on various machines. New concepts in computational sciences emerge regularly, and may be very useful in computational physics. For in- stance, machine learning is presently en vogue and applications in physics are becoming more and more popular. As apparent from the publication record, the Z03 project was very successful in the last funding period. Two open source packages ( ALF (alf.physik.uni-wuerzburg.de) and w2dynamics (github.com/w2dynamics) were published with the help of Dr. Goth, who is presently occupying the position. Apart from securing knowledge, program packages are becoming increasingly important. They foster collaborations and provide a documented path for reproducing results. Let us note that many top journals such as Science subscribe to a code and data policy that requires reproducibility of data. In addition to this, several publications rest on Dr. Goth’s knowledge in computational sciences, in numerical linear algebra, in object oriented programming skills, in reproducible workflows as well as in established continuous integration schemes. It has proven extremely beneficial that he is a trained theoretical physicist in the very same domain, topology and correlations, as the collaborative research center.