Software Alternatives, Accelerators & Startups

rr

rr is a debugging tool designed to record and replay program execution.

rr

rr Reviews and Details

This page is designed to help you find out whether rr is good and if it is the right choice for you.

Screenshots and images

  • rr Landing page
    Landing page //
    2022-03-30

Features & Specs

  1. Deterministic Debugging

    rr provides deterministic debugging by recording program execution, allowing developers to reproduce bugs reliably across different runs. This helps in diagnosing elusive, non-deterministic bugs.

  2. Time-travel Debugging

    It allows time-travel debugging, enabling developers to step backward in time during a debug session. This feature makes it easier to trace how an issue occurred.

  3. Performance

    While rr induces some overhead during recording, it is generally more efficient compared to other similar tools, making it viable for use on larger applications.

  4. Integration with GDB

    rr integrates seamlessly with GDB, providing familiar debugging commands and environment to developers who are already accustomed to using GDB.

  5. Open Source

    Being an open-source project allows for community contributions and transparency, and it is freely available, fostering a wide user and support community.

Badges

Promote rr. You can add any of these badges on your website.

SaaSHub badge
Show embed code
SaaSHub badge
Show embed code

Videos

Bike Test: 2022 Beta 200 RR Review

Social recommendations and mentions

We have tracked the following product recommendations or mentions on various public social media platforms and blogs. They can help you see what people think about rr and what they use it for.
  • The Log Is the Agent
    Agreed. While not directly applicable, I was a huge fan of Mozilla's rr [0] in undergrad. Quoting their site: > rr records a group of Linux user-space processes and captures all inputs to those processes from the kernel, plus any nondeterministic CPU effects performed by those processes (of which there are very few). I think the solution will resemble that. You don't control the LLM, sure. But you can control what... - Source: Hacker News / 27 days ago
  • V8 Garbage Collector
    Rr (https://rr-project.org/) and memory watchpoints are a godsend when it comes to analysing heap corruptions. - Source: Hacker News / 9 months ago
  • Things you can do with a debugger but not with print debugging
    Since you're already a GDB user, rr will probably feel comfortably familiar. https://rr-project.org/ already has enough example usage to get you going on the home page right there. - Source: Hacker News / 11 months ago
  • Things you can do with a debugger but not with print debugging
    Something I haven't seen discussed here that is another type of debugging that can be very useful is historical / offline debugging. Kind of a hybrid of logging and standard debugging. "everything" is logged and you can go spelunk. For example: https://rr-project.org/. - Source: Hacker News / 11 months ago
  • Checking Out CPython 3.14's remote debugging protocol
    Https://rr-project.org/ is a great Time-Travel debugger and has the capability to record and replay the execution of the CPython interpreter, but since it depends on GDB (which just knows how to inspect compiled programs) it struggles to present the state of the Python program running inside of the interpreter. I've found that the best way to inspect Python programs with GDB is to use the GDB extensions... - Source: Hacker News / about 1 year ago
  • Building the Rust Compiler with GCC
    Process recording by time travel debug seems like a good fit for this problem - then you can capture 100% of process execution and then go back and investigate further. We (Undo.io) came up with a technique for following a tree of processes and initiating process recording based on a glob of program name. It's the `--record-on` flag in https://docs.undo.io/UsingTheLiveRecorderTool.html. You can grab a free trial... - Source: Hacker News / about 1 year ago
  • Systems Correctness Practices at Amazon Web Services
    Https://rr-project.org/ for languages that can be debugged by gdb. - Source: Hacker News / about 1 year ago
  • As a developer, my most important tools are a pen and a notebook
    I've never used it but sounds like https://rr-project.org/. - Source: Hacker News / about 1 year ago
  • Graphics Livecoding in Common Lisp
    I frequently try to mention how Java with JRebel is the closest to the Lisp experience I've found with non-Lisp, it's more dynamic feeling than so-called dynamic languages. Having something like the condition system being ubiquitous would be golden. (I'm aware there is a Java port though I never got around to playing with it and it doesn't solve the problem of other people's code not using it..) My last big job... - Source: Hacker News / over 1 year ago
  • Show HN: CodeTracer โ€“ a new time-traveling debugger implemented in Nim and Rust
    We are currently working on two "backends" where recording works in different ways. For the scripting languages and smart contract/ZK languages, we instrument the interpreters using high level hooking API-s or direct patches, and we produce a trace. For system languages, we directly build on top of RR[1] recordings for now: RR can record multiple processes, and it works in userland. IIRC it doesn't support... - Source: Hacker News / over 1 year ago
  • Show HN: CodeTracer โ€“ a new time-traveling debugger implemented in Nim and Rust
    We are also planning to develop a distributed tracing platform, similar to Jaeger and OpenTelemetry, that continuously records the execution of many distributed processes (e.g. micro-services). Unlike the existing platforms, which capture only message flows and require you to make educated guesses when some anomaly is observed, our system will let you accurately replay the processing code for each message to... - Source: Hacker News / over 1 year ago
  • Don't Look Down on Print Debugging
    Https://learn.microsoft.com/en-us/windows-hardware/drivers/debuggercmds/time-travel-debugging-overview Or on Linux use rr (https://rr-project.org/) or Undo (https://undo.io - disclaimer: I work on this). These have the advantage that you only need to repro the bug once (just record it in a loop until the bug happens) then debug at your leisure. So even rare bugs are susceptible. Rr and Undo also both have... - Source: Hacker News / over 1 year ago
  • Don't Look Down on Print Debugging
    Agree, there are some time travel debuggers though but either only for some programming languages or expensive commercial or only for linux e.g. rr-debugger[0]. Also there is rerun [1] that is only for image processing pipeline debugging. I wish there was something similar like rerun but for code: you record the whole program running and capture all snapshots then stop it running. Now you can analyze all app... - Source: Hacker News / over 1 year ago
  • Net 9.0 LINQ Performance Improvements
    > IntelliTrace is one that comes to mind - thereโ€™s nothing remotely close to itโ€™s snapshot debugging that Iโ€™ve seen anywhere else, and Iโ€™ve really looked. https://rr-project.org/. - Source: Hacker News / almost 2 years ago
  • Tbsp โ€“ treesitter-based source processing language
    Hi, in case you're not already aware of the name clash, there's already a `rr` in the programming world. It's "record and replay": https://rr-project.org/. Very different, but a very fine tool tool. - Source: Hacker News / almost 2 years ago
  • Deterministic Replay of QEMU Emulation
    I don't know, however a key element is: > Record/replay system is based on saving and replaying non-deterministic events > The following non-deterministic data from peripheral devices is saved into the log: mouse and keyboard input, network packets, audio controller input, serial port input, and hardware clocks (they are non-deterministic too, because their values are taken from the host machine). Inputs from... - Source: Hacker News / almost 2 years ago
  • How does it feel to test a compiler?
    Rr. Rr rr rr rr. rr! When testing "algorithmic" modules like compilers, it's basically a productivity cheat code to run the tests under https://rr-project.org/. Doing so allows you to deterministically replay execution, seeking forwards and backwards in the timeline of your program's execution, and quickly locate what went wrong in any computation. For example, if we have
        struct...
    - Source: Hacker News / almost 2 years ago
  • rr โ€“ record and replay debugger for C/C++
    It says on https://rr-project.org/ that it supports Go programm, what's the status? - Source: Hacker News / about 2 years ago
  • GTFL โ€“ A Graphical Terminal for Common Lisp
    This was because no matter how hard I tried, I kept running into variables that I was watching that appeared to be the same reference, have different values (so I know I was referring to something wrong, but could not for the life of me figure it out, and though if I only had a way to step/trace and do this visually like an AST that highlights changed values and you could see back to its root where it's actually... - Source: Hacker News / about 2 years ago
  • Hermit is a hermetic and reproducible sandbox for running programs
    I think this tool must share a lot techniques and use cases with rr. I wonder how it compares in various aspects. https://rr-project.org/ rr "sells" as a "reversible debugger", but it obviously needs the determinism for its record and replay to work, and AFAIK it employs similar techniques regarding system call interception and serializing on a single CPU. The reversible debugger aspect is built on periodic... - Source: Hacker News / over 2 years ago
  • So you think you want to write a deterministic hypervisor?
    Https://rr-project.org/ had the same problem. They use the retired conditional branch counter instead of instruction counter, and then instruction steeping until at the correct address. - Source: Hacker News / over 2 years ago

Do you know an article comparing rr to other products?
Suggest a link to a post with product alternatives.

Suggest an article

rr discussion

Log in or Post with

Is rr good? This is an informative page that will help you find out. Moreover, you can review and discuss rr here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.