Skip to main content

Sampling profiler

This is a profiler which can be used to find performance bottle necks in Delphi applications. It can tell how much CPU time a certain piece of code needed.

There are basically two sorts of profilers:

  • Sampling profilers
  • Instrumenting profilers

The latter ones add code to the application which enables them to measure exactly what took how long and who called whom. While this can be useful for finding bottlenecks, it usually affects execution speed of the executable quite a lot. So if an application is performance critical it might not be the right approach. It's usually a good tool to use when you already know where the performance critical spot in the code is and one wants to optimize that.

A sampling profiler in turn just looks at the code running now and then and tries to find out what he can from the samples gathered by this. It doesn't influence execution speed much.

The sampling profiler can be found here: https://www.delphitools.info/downloads/samplingprofiler-changelog/