add tracy support

android: `make android-tracy`
desktop: `cargo run --release --features tracy`

connect via `127.0.0.1:8086`
if using android then want to use desktop, unset the adb port
forwarding:
`adb forward --remove tcp:8086`

Signed-off-by: kernelkind <kernelkind@gmail.com>
This commit is contained in:
kernelkind
2025-08-17 17:00:58 -04:00
parent a6d91c43e4
commit 0717353717
4 changed files with 110 additions and 0 deletions

101
Cargo.lock generated
View File

@@ -2112,6 +2112,20 @@ dependencies = [
"slab", "slab",
] ]
[[package]]
name = "generator"
version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d18470a76cb7f8ff746cf1f7470914f900252ec36bbc40b569d74b1258446827"
dependencies = [
"cc",
"cfg-if",
"libc",
"log",
"rustversion",
"windows 0.61.3",
]
[[package]] [[package]]
name = "generic-array" name = "generic-array"
version = "0.14.7" version = "0.14.7"
@@ -3116,6 +3130,19 @@ dependencies = [
"log", "log",
] ]
[[package]]
name = "loom"
version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca"
dependencies = [
"cfg-if",
"generator",
"scoped-tls",
"tracing",
"tracing-subscriber",
]
[[package]] [[package]]
name = "loop9" name = "loop9"
version = "0.1.5" version = "0.1.5"
@@ -4506,6 +4533,7 @@ checksum = "3eb8486b569e12e2c32ad3e204dbaba5e4b5b216e9367044f25f1dba42341773"
dependencies = [ dependencies = [
"profiling-procmacros", "profiling-procmacros",
"puffin", "puffin",
"tracy-client",
] ]
[[package]] [[package]]
@@ -6235,6 +6263,27 @@ dependencies = [
"tracing-log", "tracing-log",
] ]
[[package]]
name = "tracy-client"
version = "0.18.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef54005d3d760186fd662dad4b7bb27ecd5531cdef54d1573ebd3f20a9205ed7"
dependencies = [
"loom",
"once_cell",
"tracy-client-sys",
]
[[package]]
name = "tracy-client-sys"
version = "0.26.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "319c70195101a93f56db4c74733e272d720768e13471f400c78406a326b172b0"
dependencies = [
"cc",
"windows-targets 0.48.5",
]
[[package]] [[package]]
name = "try-lock" name = "try-lock"
version = "0.2.5" version = "0.2.5"
@@ -7022,6 +7071,28 @@ dependencies = [
"windows-targets 0.52.6", "windows-targets 0.52.6",
] ]
[[package]]
name = "windows"
version = "0.61.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893"
dependencies = [
"windows-collections",
"windows-core 0.61.2",
"windows-future",
"windows-link",
"windows-numerics",
]
[[package]]
name = "windows-collections"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8"
dependencies = [
"windows-core 0.61.2",
]
[[package]] [[package]]
name = "windows-core" name = "windows-core"
version = "0.52.0" version = "0.52.0"
@@ -7067,6 +7138,17 @@ dependencies = [
"windows-strings 0.4.2", "windows-strings 0.4.2",
] ]
[[package]]
name = "windows-future"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e"
dependencies = [
"windows-core 0.61.2",
"windows-link",
"windows-threading",
]
[[package]] [[package]]
name = "windows-implement" name = "windows-implement"
version = "0.58.0" version = "0.58.0"
@@ -7117,6 +7199,16 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a"
[[package]]
name = "windows-numerics"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1"
dependencies = [
"windows-core 0.61.2",
"windows-link",
]
[[package]] [[package]]
name = "windows-result" name = "windows-result"
version = "0.1.2" version = "0.1.2"
@@ -7270,6 +7362,15 @@ dependencies = [
"windows_x86_64_msvc 0.53.0", "windows_x86_64_msvc 0.53.0",
] ]
[[package]]
name = "windows-threading"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6"
dependencies = [
"windows-link",
]
[[package]] [[package]]
name = "windows_aarch64_gnullvm" name = "windows_aarch64_gnullvm"
version = "0.42.2" version = "0.42.2"

View File

@@ -28,3 +28,10 @@ android: jni
cd $(ANDROID_DIR) && ./gradlew installDebug cd $(ANDROID_DIR) && ./gradlew installDebug
adb shell am start -n com.damus.notedeck/.MainActivity adb shell am start -n com.damus.notedeck/.MainActivity
adb logcat -v color -s GameActivity -s RustStdoutStderr -s threaded_app | tee logcat.txt adb logcat -v color -s GameActivity -s RustStdoutStderr -s threaded_app | tee logcat.txt
android-tracy: fake
cargo ndk --target arm64-v8a -o $(ANDROID_DIR)/app/src/main/jniLibs/ build --profile release --features tracy
cd $(ANDROID_DIR) && ./gradlew installDebug
adb shell am start -n com.damus.notedeck/.MainActivity
adb forward tcp:8086 tcp:8086
adb logcat -v color -s GameActivity -s RustStdoutStderr -s threaded_app | tee logcat.txt

View File

@@ -51,6 +51,7 @@ path = "src/notedeck.rs"
default = [] default = []
memory = ["re_memory"] memory = ["re_memory"]
puffin = ["profiling/profile-with-puffin", "dep:puffin"] puffin = ["profiling/profile-with-puffin", "dep:puffin"]
tracy = ["profiling/profile-with-tracy"]
debug-widget-callstack = ["egui/callstack"] debug-widget-callstack = ["egui/callstack"]
debug-interactive-widgets = [] debug-interactive-widgets = []

View File

@@ -73,4 +73,5 @@ security-framework = "2.11.0"
[features] [features]
default = [] default = []
puffin = ["dep:puffin", "profiling/profile-with-puffin"] puffin = ["dep:puffin", "profiling/profile-with-puffin"]
tracy = ["profiling/profile-with-tracy"]