Scientific Programmer in High Performance Computing
The Earth and Planetary Magnetism group at the Institute of Geophysics at ETH Zurich studies planetary magnetism with a strong focus on the Earth. Part of our group is devoted to the mechanisms underlying the generation and evolution of the magnetic field of a planet following theoretical, numerical and experimental approaches. In this context, we have developed a computer code capable of reproducing some of the fundamental ingredients that govern the physics in the molten core of a planet, in particular strong rotational and magnetic forces. The group is comprised of approximately 15 people.
We seek a candidate who will work with other team members on the development of our existing computing package QuICC, which is a spectral code for the simulation of fluid flow, heat transfer and magnetic field generation in a number of geometries, including spherical shells and spheres. A deep knowledge of HPC will be required to develop optimal performance of the code on thousands to tens of thousands of cores. You will develop the performance of this code using the Kokkos C++ EcoSystem to enable GPU computing on the Swiss National Supercomputer Centre's Piz Daint and its successors. Regression testing will be carried out using Jenkins. You will liaise with code users to troubleshoot problems.
Some overseas travel is expected, in order to report on progress at international meetings. The position is available immediately or by arrangement with an appointment for one year, with the possibility of extension.
You will hold a Master's degree in computer science or another relevant subject. You will have knowledge of HPC and experience in writing parallel code using message-passing paradigms such as MPI. You will have knowledge of C++ and Python. Knowledge and experience in GPU computing, preferably using Kokkos, is expected. Knowledge of HPX will be a plus.
You are a self-starter who is able to work independently.
We look forward to receiving your online application with the following documents:
- Full Curriculum Vitae
- A statement describing computing and programming skills, and projects in which you have been involved
Please note that we exclusively accept applications submitted through our online application portal. Applications via email or postal services will not be considered.
Further information about group can be found on our website www.epm.ethz.ch. Questions regarding the position should be directed to Dr. P. Marti, email firstname.lastname@example.org (no applications).