Nystrom, William D emailed the following on 26/10/12 16:58: > What profiling tools do you recommend to use with petsc? I have investigated > and tried Openspeedshop, > HPC Toolkit and Tau but have not tried any with petsc. I was told that there > were some issues with > using Tau with petsc. Not sure what they are. So far, I have liked Tau best.
You should be able to use any profiler you use with other codes. I cannot imagine what problem Tau would run into with PETSc - although I have not tried myself. In a couple of instances macro's did get in the way...but it only takes a couple of seconds to inline by hand any code of interest so it's not a big deal. For PETSc I found valgrind's cachegrind to be great for profiling cache because it can annotate source. However, I really struggled get anything useful about threads out of valgrind. Oprofile is also great as it can give annotated code indicating the cost at each line. Perf and likwid also worked fine for integrated statistics. Those three use hardware counters and so are particularly useful. Recently I have been using vtune on IvyBridge for petsc and was really very happy with the usability and depth of reporting. I think Intel did a good job hooking up all the hardware counters so you can measure a bunch of stuff with no faffing about. However, I feel completely cheated having to pay a hefty license for just one architecture - particularly when a combination of the afore mentioned tools will give you the same data (with a couple of exceptions as tools catch up with new hardware counters). Cheers Gerard
