Allinea Forge is a GUI debugger and profiler for serial and parallel applications, which is now available on all clusters. In the past, PACE had “DDT”, which is a parallel debugger from the same company. Allinea combined DDT with a parallel profiler “MAP”, and rebranded the product as “FORGE”. For more information, please visit http://www.allinea.com/products/develop-allinea-forge
You can use Forge as follows:
module load forge/4.2.2
dtt (for the debugger)
map (for the profiler)
We still keep the old versions of DDT 3.1 and 3.2, which are available via module ‘ddt’, but we strongly recommend using forge from now on.
We have a shared ‘floating’ 128-core license for both tools. This means, when a user is debugging a 100-core run using DDT, another user can use up to 28-cores for either DDT or MAP.
If you are developing codes, DDT is a great way to identify bugs, memory leaks, etc (think of it as gdb in parallel with a easy-to-use GUI). If your code is working, but performing poorly, then MAP is the tool to profile the code and find the bottlenecks. PACE offers a debugging and profiling summer class (https://pace.gatech.edu/workshop/DebuggingProfiling.pdf), which partly covers DDT. MAP is a new tool for us as well, and we will include it in future sessions once we figure out how it works 🙂
These tools provide an intuitive interface for a shallow learning curve and targets all levels of users without requiring any specific expertise. So if you have any problem nodes, we strongly encourage you to give them a shot. If you still have difficulties, PACE team is always here to help you (and learn together in the process).