R-Visor: An Extensible Dynamic Binary Instrumentation and Analysis Framework for Open(…)
summary
R-Visor is a JIT cache-based dynamic binary instrumentation engine plus an ArchVisor DSL for adding ISA extensions; implemented in ~8,000 lines of C for the RV64GC2 RISC‑V toolchain and evaluated on a tri 5 processor hosted on an FPGA using the EMBench suite (23 binaries). Compared to DynamoRIO, R-Visor reports 1.81× lower runtime overhead and 2.64× lower memory use, needs 9.30× less code to support F and C extensions, uses trace linking and delivers ~16.94% average code-size reduction for compressed-instruction emulation.
AI-written summary · about
chapters (16)
- 0:00R-Visor introduction
- 1:25Dynamic binary instrumentation fundamentals
- 3:07Open ISA challenges
- 4:34R-Visor extensible design
- 5:37R-Visor architecture
- 7:02Low overhead optimizations
- 8:05ArchVisor DSL extensibility
- 9:52ArchVisor grammar design
- 11:15Implementation details
- 11:36Experimental setup
- 12:23Performance vs DynamoRIO
- 13:26Code overhead reduction
- 13:49Instruction emulation use case
- 15:14Future work
- 16:19Conclusion and availability
- 17:03Q&A
related talks
16mEfficient debug and trace of RISC-V systems: a hardware/software co-design approach
13mIntroduction to RISC-V Processor Verification
17mDemo: RISC-V Models for Verification, Software Development and Architectural Explor...
11mGetting Started with RISC-V Custom Instructions
28mLLVM for RISCV
11mSimulate, trace, and evaluate a RISC-V system leveraging very long vectors
20mAnalysis for Code Size Opportunities in RISC V
17mRecent Developments in Optimizing Compilers for RISC-V
