Skip to content

Replace default valgrind profiling tools with perf/heaptrack #280

@Tropicao

Description

@Tropicao

The training currently covers the following tools from Valgrind framework:

  • memcheck
  • cachegrind
  • callgrind
  • massif

While memcheck still remains relevant to detect memory management issues (and without any standard alternatives), the other tools are becoming less and less relevant. For example, cachegrind has slowly started deprecating the cache simulation, because it does not reflect real hardware. For all those tools, we also present alternatives, but only as a second solution.

We need to switch the order and put more standard tools as primary tools:

  • in the slides, introduce perf stat as the default tool for low level/hw related profiling, move cachegrind as a second tool/alternative
  • in the slides, introduce perf record/report as the default tool for execution/func profiling, move callgrind as a second tool/alternative
  • in the slides, enrich the heapstrack part and reduce the massif part, put the heaptrack part
  • in the labs, introduce a heaptrack lab for memory profiling. While at it, it should go a bit further than our current massif lab (maybe hide an actual issue in there that is worth fixing regardless memory alloc/dealloc ?)
  • in the lab, remove cachegrind/callgrind and massif labs in favor of perf/heaptrack labs
  • enrich the perf app profiling slides to show how to see the location of captured events (eg: perf annotate)

Metadata

Metadata

Assignees

Labels

debuggingDebugging/Profiling/Tracing trainingenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions