Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.


DMD comes with an option to instrument an executable for profiling its execution. You can enable it on the project configuration page "Code Generation".

Running the executable will create a file named trace.log in the current working directory. Opening the profiler window from the Visual D menu allows browsing the info in this file conveniently. You must specify the full path to the trace.log in the edit field at the top of the window.

The toolbar at the top is used to

The times in the function list are displayed in microseconds.

Double-clicking a line in the function list tries to jump to the corresponding source code line. This relies on appropriate information found in generated JSON files.

Double clicking a line in the caller/callee lists selects the function in the function list, so you can navigate through the call tree.