DISTRHO/DPF

Any good idea to profile `Plugin::run()`?

Closed this issue · 1 comments

Hi falkTX!

I want to improve performance of my plugin, so I planned to profile Plugin::run() with Calllgrind.

However, Callgrind did not report anything about the function, just showing the execution of DISTRHO::Plugin and DISTRHO::UI's constructors.


How to reproduce:

  1. Build standalone version of my project Minaton-XT
  2. Run standalone with Valgrind:
cd build/bin
valgrind --tool=callgrind --verbose ./minaton
  1. Use qpwgraph to connect JACK wire, and play some notes with MIDI keyboard.
  2. Exit standalone, then use Speedscope to open Callgrind dump.

Do you have any better idea to profile Plugin::run() properly?

BTW: Attachment is the JSON file exported by Speedscope. You can load it by the site.

callgrind.speedscope.json.tar.gz

I've found a solution: using Linux tool perf with plugin built with Debug or RelWithDebInfo profile.