Skip to content

nektro/zig-tracy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zig-tracy

loc license discord

Zig integration for the Tracy profiler.

https://github.com/wolfpld/tracy

Currently uses tracy v0.7.8

Adding to your project

Using the https://github.com/nektro/zigmod package manager.

root_dependencies:
  - src: git https://github.com/nektro/zig-tracy

Adding it to your code

const tracy = @import("tracy");

fn function_i_wish_to_trace() void {
    const t = tracy.trace(@src(), null);
    defer t.end();
    // ...
    // the rest of the function body
}

The second parameter to trace can be used to give a name to the zone, otherwise it will simply be the inferred function name and location in the source code.

const tracy = @import("tracy");

fn main() !void {
    var quit = false;
    while (!quit) {
        const frame = tracy.frame(null);
        defer frame.end();

        // ...
        // the rest of the loop
    }
}

Building

$ zigmod fetch
$ zig build -Dtarget=native-native-gnu.2.18

License

MIT