tracy: move profiler facade into workspace crate
This commit is contained in:
parent
657e7ce2f7
commit
b7ecf700fa
7 changed files with 49 additions and 9 deletions
13
Cargo.lock
generated
13
Cargo.lock
generated
|
|
@ -681,6 +681,7 @@ dependencies = [
|
|||
"jay-layout-animation",
|
||||
"jay-time",
|
||||
"jay-toml-config",
|
||||
"jay-tracy",
|
||||
"jay-units",
|
||||
"jay-utils",
|
||||
"kbvm",
|
||||
|
|
@ -698,13 +699,11 @@ dependencies = [
|
|||
"regex",
|
||||
"repc",
|
||||
"run-on-drop",
|
||||
"rustc-demangle",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"smallvec",
|
||||
"thiserror",
|
||||
"tiny-skia",
|
||||
"tracy-client-sys",
|
||||
"uapi",
|
||||
"walkdir",
|
||||
"with_builtin_macros",
|
||||
|
|
@ -802,6 +801,16 @@ dependencies = [
|
|||
"walkdir",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "jay-tracy"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"ahash",
|
||||
"parking_lot",
|
||||
"rustc-demangle",
|
||||
"tracy-client-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "jay-units"
|
||||
version = "0.1.0"
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@ members = [
|
|||
"criteria",
|
||||
"cmm",
|
||||
"time",
|
||||
"tracy",
|
||||
"toml-config",
|
||||
"algorithms",
|
||||
"toml-spec",
|
||||
|
|
@ -53,6 +54,7 @@ jay-utils = { version = "0.1.0", path = "utils" }
|
|||
jay-criteria = { version = "0.1.0", path = "criteria" }
|
||||
jay-cmm = { version = "0.1.0", path = "cmm" }
|
||||
jay-time = { version = "0.1.0", path = "time" }
|
||||
jay-tracy = { version = "0.1.0", path = "tracy" }
|
||||
|
||||
uapi = "0.2.13"
|
||||
thiserror = "2.0.11"
|
||||
|
|
@ -85,8 +87,6 @@ serde = { version = "1.0.196", features = ["derive"] }
|
|||
serde_json = "1.0.128"
|
||||
linearize = { version = "0.1.3", features = ["derive"] }
|
||||
png = "0.18.0"
|
||||
rustc-demangle = { version = "0.1.24", optional = true }
|
||||
tracy-client-sys = { version = "0.24.1", features = ["ondemand", "manual-lifetime", "debuginfod", "demangle"], optional = true }
|
||||
kbvm = { version = "0.1.6", features = ["compose"] }
|
||||
tiny-skia = { version = "0.12.0", default-features = false, features = ["std"] }
|
||||
regex = "1.11.1"
|
||||
|
|
@ -118,4 +118,4 @@ opt-level = 3
|
|||
[features]
|
||||
rc_tracking = []
|
||||
it = []
|
||||
tracy = ["dep:tracy-client-sys", "dep:rustc-demangle"]
|
||||
tracy = ["jay-tracy/tracy"]
|
||||
|
|
|
|||
|
|
@ -45,7 +45,10 @@ mod macros;
|
|||
#[macro_use]
|
||||
mod leaks;
|
||||
#[macro_use]
|
||||
mod tracy;
|
||||
extern crate jay_tracy;
|
||||
|
||||
use jay_tracy as tracy;
|
||||
|
||||
mod acceptor;
|
||||
mod allocator;
|
||||
mod animation;
|
||||
|
|
|
|||
14
tracy/Cargo.toml
Normal file
14
tracy/Cargo.toml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
[package]
|
||||
name = "jay-tracy"
|
||||
version = "0.1.0"
|
||||
edition = "2024"
|
||||
license = "GPL-3.0-only"
|
||||
|
||||
[dependencies]
|
||||
ahash = { version = "0.8.7", optional = true }
|
||||
parking_lot = { version = "0.12.1", optional = true }
|
||||
rustc-demangle = { version = "0.1.24", optional = true }
|
||||
tracy-client-sys = { version = "0.24.1", features = ["ondemand", "manual-lifetime", "debuginfod", "demangle"], optional = true }
|
||||
|
||||
[features]
|
||||
tracy = ["dep:ahash", "dep:parking_lot", "dep:rustc-demangle", "dep:tracy-client-sys"]
|
||||
|
|
@ -66,9 +66,10 @@ impl ZoneName {
|
|||
}
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! create_zone_name {
|
||||
($($tt:tt)*) => {
|
||||
crate::tracy::ZoneName::__get(&format!($($tt)*))
|
||||
$crate::ZoneName::__get(&format!($($tt)*))
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -85,6 +86,7 @@ impl Drop for RunningZone {
|
|||
}
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! dynamic_raii_zone {
|
||||
($name:expr) => {{
|
||||
let name: ZoneName = $name;
|
||||
|
|
@ -92,16 +94,18 @@ macro_rules! dynamic_raii_zone {
|
|||
}};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! dynamic_zone {
|
||||
($name:expr) => {
|
||||
let _zone = dynamic_raii_zone!($name);
|
||||
};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! raii_zone {
|
||||
($($tt:tt)*) => {
|
||||
{
|
||||
static CACHE: std::sync::LazyLock<crate::tracy::ZoneName> = std::sync::LazyLock::new(|| {
|
||||
static CACHE: std::sync::LazyLock<$crate::ZoneName> = std::sync::LazyLock::new(|| {
|
||||
create_zone_name!($($tt)*)
|
||||
});
|
||||
CACHE.__enter()
|
||||
|
|
@ -109,6 +113,7 @@ macro_rules! raii_zone {
|
|||
};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! zone {
|
||||
($($tt:tt)*) => {
|
||||
let _zone = raii_zone!($($tt)*);
|
||||
|
|
@ -147,6 +152,7 @@ impl FrameName {
|
|||
}
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! raii_frame {
|
||||
($name:expr) => {{
|
||||
let name: FrameName = $name;
|
||||
|
|
@ -154,6 +160,7 @@ macro_rules! raii_frame {
|
|||
}};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! frame {
|
||||
($name:expr) => {
|
||||
let _frame = raii_frame!($name);
|
||||
|
|
@ -12,36 +12,43 @@ impl FrameName {
|
|||
}
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! create_zone_name {
|
||||
($($tt:tt)*) => {
|
||||
crate::tracy::ZoneName
|
||||
$crate::ZoneName
|
||||
};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! dynamic_raii_zone {
|
||||
($name:expr) => {};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! dynamic_zone {
|
||||
($name:expr) => {};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! raii_zone {
|
||||
($($tt:tt)*) => {
|
||||
()
|
||||
};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! zone {
|
||||
($($tt:tt)*) => {};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! raii_frame {
|
||||
($name:expr) => {
|
||||
()
|
||||
};
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! frame {
|
||||
($name:expr) => {};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue