Nix/README.md

19 lines
812 B
Markdown

# Nix Profiled With Tracy
## Profiling Idea
TODO: explain
- Tracing thunk force operations.
- Eval is single-threaded and recursive: easy to build stack frames
out of global eval state.
- Profiling infos are streamed to tracy server in that prototype.
- In previous iterations, we tried:
- keep the profile in memory and save it to memory in a previous iteration. See [andir's version](https://git.alternativebit.fr/picnoir/Nix/src/branch/pic/tracy-on-top-of-andi) for code/more infos.
- eBPF approach using USDTs (through bcc). We kept over-running the kernel/userspace ring buffer. See [here](https://git.alternativebit.fr/picnoir/Nix/src/branch/nin/usdt-rust) for more infos/code.
## TODOs
- Document everything.
- Rewrite autotools madness with somebody who actually know what they're doing.