There are a few options on the Atos HPCF when it comes to debugging your malfunctioning program:
HPC2020: ARM DDT
Arm DDT is a powerful, easy-to-use graphical debugger. It provides a complete solution for finding and fixing problems on a single thread or across hundreds of thousands of threads. You can use Arm DDT to debug OpenMP, parallel (MPI) software, heterogeneous software such as that written to use GPUs, hybrid codes mixing paradigms such as MPI + OpenMP, or MPI + CUDA, and multi-process software of any form, including client-server applications. Please refer to the Official DDT documentation to learn how to use it.
HPC2020: GDB
GDB, the GNU Project debugger, allows you to see what is going on `inside' another program while it executes -- or what another program was doing at the moment it crashed.
GDB can make your program stop on specified conditions, examine what has happened, when your program has stopped, and even change things in your program, so you can experiment with correcting the effects of one bug and go on to learn about another.
HPC2020: Valgrind
Valgrind is a programming tool for memory debugging, memory leak detection, and profiling. The default tool is Memcheck, which can detect many memory-related errors that are common in C and C++ programs and that can lead to crashes and unpredictable behaviour. If you wish to run your program through valgrind, you should make sure it has been built with the -g compiler option, so it includes al the necessary debug information, and without optimisations.