Replies: 1 comment 3 replies
-
Thank you for the thread. I hope I am not getting your question wrong, but I think it is 1: we set software breakpoints using lldb on parts of the code that we want to trace, and just "pause and resume" as fast as possible. But actually the backend implementation can be changed, it's possible to have an implementation based on rr, with a different set of trade offs - e.g. rr is not truely parallel. Compile-time filtering: it's quite fast right now, at least it didn't bother me to parallelize or optimize the static analysis stage. Because we access cargo (rust's package manager)'s metadata. Basically the purpose of the static-analysis stage is to categorize each symbol into either "user code", "vendored code" and "system" (standard library and OS). Thank you. The control flow visualization is pretty scalable, we can handle trees say with 100k nodes. I agree with you the variables rendering is for "neat visualizations" and it can definitely chok on MBs of data. So we basically truncate (with Hope this answers your questions. What's your imagination to what time-travel debugging can be? I do want to bring FireDBG to other languages and would love to collaborate on those. One thing I am working on is to trace heap allocations and detect memory leaks. |
Beta Was this translation helpful? Give feedback.
-
It is unclear, if 1. lldb tracing of the complete program state is being with according performance implications used or 2. something more lightweight akind to rr with ~1.3x time needs or 3. custom code generation or 4. custom debug tracer functionality is loaded into the memory address space of the process.
The other question would be how much compiletime or runtime filtering can be mode to get only the relevant results and/or things can be filtered by only collecting in one thread etc.
Thanks for your effort. I do very much like the control flow visualization, but I think the memory visualization is unfeasible for bigger structures.
Beta Was this translation helpful? Give feedback.
All reactions