Tracy Profiler Integration

Stefan Koch uplink.coder at
Mon Aug 10 21:54:33 UTC 2020

On Monday, 3 August 2020 at 20:36:51 UTC, Stefan Koch wrote:
> Hello Folks,
> I am currently integrating the tracy profiler 
> (
> with dmd.
> Such that instead of the profiler in druntime, tracy can be 
> used for instrumented profiling.
> The current progress is here: 
>  there are still some teething problems, but I am confident 
> that it will be useful soon.
> Cheers,
> Stefan

There are some news of this:

Here is a screenshot of the Tracy profiler integration being 
used, for a "trivial" hello world example, (in reliity the 
druntime and phobos templates gave me a bit of trouble  ...)

The code on the left hand side can be compiled with the -tracy 
and run (provided you copy TracyClientNoExit.o) into 
(which you have to compile yourself using
and running the from there).

Cheers everyone!
Note, currently I am using the c-api for dynamic langauges, which 
creates source locations every time, that makes the profiling a 
little more expensive than it would usually be.
Hence even a no-op function will take about a microsecond ... But 
this can be improved later.

Using tracy I found out that the unsignedTempString function in 
Phobos is somewhat slow ...
No wonder it divides in a loop.
I'll replace it soon.

More information about the Digitalmars-d mailing list