Skip to content

Tools for C++ programming

Code formatting

Linting and static analysis

Configuration files

  • libconfig: configuration file management library for C++.

Package managers

  • Conan: package manager for C and C++.
  • vcpkg: package manager for C and C++.

Testing

  • Catch2: C++ unit testing framework that also supports Behavior-Driven Development (BDD).

Profiling

  • GNU gprof is a basic instrumenting profiler distributed with GNU Binutils. It is useful for introductory profiling and existing workflows, but gprofng is the more capable profiler in current Binutils releases.
  • Intel VTune Profiler analyzes CPU, accelerator, threading, and memory-performance behaviour. It can be installed separately or as part of the Intel oneAPI toolkits.
  • Linaro Forge combines the DDT parallel debugger, MAP profiler, and Performance Reports. It is designed for MPI, OpenMP, and accelerator-enabled HPC applications.
  • HPCToolkit is an open-source measurement and analysis suite for CPU and GPU-accelerated applications, including parallel programs.
  • Scalasca is an open-source performance-analysis toolset for MPI, OpenMP, and hybrid applications.