TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Back to the Futu-Rr-e: Deterministic Debugging with Rr

61 pointsby mnemonikover 9 years ago

4 comments

kragenover 9 years ago
Michael Elizabeth Chastain became the maintainer of the Linux ioctl list in the early days because he wanted his mec-replay tool to be able to work, and ioctls were a fly in the ointment — each ioctl has its own idea of how to interpret the arguments, and may end up accessing user memory in some complicated way. Record-and-replay tools like mec-replay, rr, <a href="https:&#x2F;&#x2F;github.com&#x2F;moyix&#x2F;panda" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;moyix&#x2F;panda</a>, and <a href="http:&#x2F;&#x2F;velvetpulse.com&#x2F;2012&#x2F;11&#x2F;27&#x2F;scribe-the-deterministic-transparent-record-replay-engine&#x2F;" rel="nofollow">http:&#x2F;&#x2F;velvetpulse.com&#x2F;2012&#x2F;11&#x2F;27&#x2F;scribe-the-deterministic-t...</a> need to be able to intercept that access in order to record the relevant data.<p>Edit: of course, I should have mentioned that doesn&#x27;t apply to PANDA — by recording events at a non-system-call interface, PANDA avoids the problems of system-call emulation and instead has the problems of hardware emulation. I imagine PANDA will be a heck of a lot more useful for debugging new bare-metal operating systems. The publisher regrets the error.<p>Time-travel debugging and deterministic replay is such a fundamentally important feature, and it can expand our capabilities in many different ways that we&#x27;re only starting to explore. Debugging is just one possible application; consider also exhaustive testing of error conditions, re-execution of optimistic transactions that hit a write conflict, temporal backtracking search over executions, data prevalence (though it doesn&#x27;t solve the schema upgrade problem), and deterministic building. And remember that the hardest problem for reverse-mode automatic differentiation is figuring out how to &quot;run the program backwards&quot; in order to find the gradient of the output; deterministic replay strategies are directly applicable to this problem and therefore to generalized gradient descent.<p>It&#x27;s a shame that mec-replay fell by the wayside 20 years ago. Surely we won&#x27;t let that happen this time. <a href="http:&#x2F;&#x2F;www.boutell.com&#x2F;lsm&#x2F;lsmbyid.cgi&#x2F;001191" rel="nofollow">http:&#x2F;&#x2F;www.boutell.com&#x2F;lsm&#x2F;lsmbyid.cgi&#x2F;001191</a> <a href="https:&#x2F;&#x2F;static.lwn.net&#x2F;1999&#x2F;0121&#x2F;a&#x2F;mec.html" rel="nofollow">https:&#x2F;&#x2F;static.lwn.net&#x2F;1999&#x2F;0121&#x2F;a&#x2F;mec.html</a><p>Much to my surprise, you can still download mec-replay 0.3 from 1995, although you&#x27;d probably need to build a Linux 1.3 kernel to run it with: ftp:&#x2F;&#x2F;ftp.shout.net&#x2F;pub&#x2F;users&#x2F;mec&#x2F;misc&#x2F;mec-0.3.tar.gz
评论 #10493562 未加载
Ygg2over 9 years ago
Are there any non-Java IDEs that implement Deterministic debugging?
评论 #10495312 未加载
chris_wotover 9 years ago
I&#x27;m wondering: if people run something like an unstable Fedora or Ubuntu distribution, could they have an option to automatically run rr for certain software?
baldfatover 9 years ago
Thank you Mozilla!!! As someone that programs in R. By making a it called rr R is now the second hardest to find stuff on Google. They really are going to hate looking for help when all the R searches come up.
评论 #10493856 未加载