tracy

C++ frame profiler

Latest version: 0.14.1

Add to xmake.lua

add_requires("tracy 0.14.1")

Learn how to add and link packages with Xmake →

Information

License
BSD-3-Clause
Recipe updated
2026-10-20T10:12:02.000Z

Platforms

  • android: armeabi, armeabi-v7a, arm64-v8a, riscv64, x86, x86_64, mips, mip64
  • msys: i386, x86_64
  • mingw: i386, x86_64, arm, arm64
  • windows: x86, x64, arm, arm64, arm64ec
  • linux: i386, x86_64, armv7, armv7s, arm64, mips, mips64, mipsel, mips64el, loong64, riscv64, s390x, ppc, ppc64, ppc64el, sparc64
  • bsd: i386, x86_64, arm, arm64, ppc, ppc64, ppc64el, riscv64, sparc64
  • harmony: armeabi-v7a, arm64-v8a, x86, x86_64
  • cross: i386, x86_64, arm, armv7, arm64, mips, mips64, mips64el, riscv, riscv64, loong64, s390x, ppc, ppc64, ppc64el, sh4, sparc64
  • wasm: wasm32, wasm64
  • iphoneos: arm64, x86_64
  • macosx: x86_64, arm64

Options

broadcast
Enable client discovery by broadcast to local network · Type: boolean · Default: true
callstack
Enable all callstack related functionality · Type: boolean · Default: true
callstack_depth
Callstack depth when enforced (1-62; CMake requires Tracy >=0.14 for depths >1) · Type: number · Default: 1
callstack_inlines
Enable the inline functions in callstacks · Type: boolean · Default: false
cmake
Use cmake buildsystem · Type: boolean · Default: true
code_transfer
Enable collection of source code · Type: boolean · Default: true
context_switch
Enable capture of context switches · Type: boolean · Default: true
crash_handler
Enable crash handling · Type: boolean · Default: true
delayed_init
Enable delayed initialization of the library (init on first call) · Type: boolean · Default: false
enforce_callstack
Enfore callstack collection for tracy regions · Type: boolean · Default: true
exit
Client executable will exit even if some profile data is not sent to server · Type: boolean · Default: true
fibers
Enable fibers support · Type: boolean · Default: true
frame_image
Enable the frame image support and its thread · Type: boolean · Default: true
libbacktrace_elf_dynload_support
Enable libbacktrace to support dynamically loaded elfs in symbol resolution resolution after the first symbol resolve operation · Type: boolean · Default: false
libunwind_backtrace
Use libunwind backtracing where supported · Type: boolean · Default: false
manual_lifetime
Enable the manual lifetime management of the profile · Type: boolean · Default: false
on_demand
On-demand profiling · Type: boolean · Default: false
only_ipv4
Tracy will only accept connections on IPv4 addresses (disable IPv6) · Type: boolean · Default: false
only_localhost
Only listen on the localhost interface · Type: boolean · Default: false
patchable_nopsleds
Enable nopsleds for efficient patching by system-level tools (e.g. rr) · Type: boolean · Default: false
sampling
Enable call stack sampling · Type: boolean · Default: true
symbol_offline_resolve
Instead of full runtime symbol resolution, only resolve the image path and offset to enable offline symbol resolution · Type: boolean · Default: false
system_tracing
Enable systrace sampling · Type: boolean · Default: true
timer_fallback
Use lower resolution timers · Type: boolean · Default: false
tracy_enable
Enable profiling · Type: boolean · Default: true
verb
Enable verbose logging · Type: boolean · Default: false
verify
Enable zone validation for C API · Type: boolean · Default: true
vsync_capture
Enable capture of hardware Vsync events · Type: boolean · Default: true

Versions

  • v0.8.2
  • v0.9
  • v0.9.1
  • v0.10
  • v0.11.0
  • v0.11.1
  • v0.12.0
  • v0.12.1
  • v0.12.2
  • v0.13.0
  • v0.13.1
  • v0.14.1

Dependencies

No dependencies declared.

Install with xrepo

Install the package independently of a project and inspect its available configuration.

install

xrepo install "tracy 0.14.1"

show info

xrepo info "tracy"

Link a library to your target

Declare the requirement, then attach the library to the target that uses it.

xmake.lua

add_requires("tracy 0.14.1")

target("demo")
    set_kind("binary")
    add_files("src/*.cpp")
    add_packages("tracy")

Open a package environment

Open a shell with the environment exported by this package. Use the executable names documented by the package.

enter shell

xrepo env -b "tracy 0.14.1" shell