4 ms·
Inject arbitrary code ("instrumentation") at arbitrary locations in the target program. This can be used to build tools for profiling, measuring code coverage,
by rrss 6y ago
Inject arbitrary code ("instrumentation") at arbitrary locations in the target program.
This can be used to build tools for profiling, measuring code coverage, tracing memory accesses, counting instructions, etc.
Some examples: I think vtune uses Pin (linked from the readme) to inject profiling instrumentation, and valgrind is a heavy instrumentation framework that's used to build tools like memcheck and cachegrind.