On Mon, Feb 24, 2025 at 9:43 AM Cesar Matheus <cesar.math...@telecom-paris.fr> wrote: > > Hi, I'm a CS student working on an optimisation of the ebur128 filter. First > I'm looking for the nicest way to get information on code performance. > I saw that the configuration flag "--enable-linux-perf" enables Linux > Performance Monitor API, I've been using the perf tool with the following > commands for example : > > ./perf record -F 99 -a -g --call-graph dwarf ./ffmpeg -i test.wav -vn -af > loudnorm=print_format=summary:dual_mono=true -f null /dev/null > > but I'm not quite satisfate with the result. > > Do you have any advice on how to properly extract informations such as > execution time, function call graph etc.. in such a case using profiling tool > (perf or gprof for example ?
I've had excellent success with Intel VTune, which while not open source is freely available: https://www.intel.com/content/www/us/en/developer/tools/oneapi/vtune-profiler.html#gs.k0kfve Function call timing, memory bandwidth utilization (if on an Intel CPU), cache analysis, and very easy to get up and running. The hard part is understanding the results, but the GUI makes that *much* easier than any command line perf based solution. But yeah, as Kieran pointed out, for any of these solutions you should be using the version of the ffmpeg binary that contains debug info. Devin -- Devin Heitmueller, Senior Software Engineer LTN Global Communications o: +1 (301) 363-1001 w: https://ltnglobal.com e: devin.heitmuel...@ltnglobal.com _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".