Benchmark history

How long ra-jit takes to build after an edit, next to plain cargo on the same machine, on real projects at pinned commits (how it is measured), and how soon a live edit runs. Each platform, macOS arm64, Linux aarch64 and Linux x86-64, is measured on a machine of its own, so compare its numbers with each other, not with another platform's. It updates after every push to main and every night.

Latest run

Linux x86-64, AWS c7a.48xlarge (dev-aws-8), pinned to 16 cores with taskset (AMD EPYC 9R14, 16 cores), ra-jit 2cf189feb6 on 2026-10-22 03:31 UTC, median of 5 edits.

ripgrep 15.1.0

Editcargora-jitFastercargo memoryra-jit memory
Edit a function787 ms69 ms11x531 MB3.53 GB
Edit a widely used function1.18 s54 ms22x539 MB3.52 GB
Change a signature957 ms95 ms10x527 MB3.53 GB
Edit a generic function1.14 s59 ms19x536 MB3.52 GB
Add a function788 ms80 ms9.8x531 MB3.52 GB
Add a struct field1.31 s78 ms17x558 MB3.52 GB
Nothing changed36 ms25 ms1.4x27 MB3.55 GB
Cold build, until ready6.18 s6.55 s1.1x slower2.39 GB2.87 GB

fd 10.3.0

Editcargora-jitFastercargo memoryra-jit memory
Edit a function752 ms61 ms12x605 MB3.29 GB
Edit a widely used function716 ms49 ms15x598 MB3.29 GB
Change a signature759 ms76 ms10.0x610 MB3.30 GB
Add a function756 ms67 ms11x605 MB3.29 GB
Add a struct field1.01 s64 ms16x633 MB3.29 GB
Nothing changed50 ms23 ms2.2x34 MB3.33 GB
Cold build, until ready40.20 s40.26 s1.0x2.66 GB3.23 GB

bat 0.26.0

Editcargora-jitFastercargo memoryra-jit memory
Edit a function774 ms61 ms13x749 MB3.90 GB
Edit a widely used function1.12 s50 ms22x749 MB3.91 GB
Change a signature1.06 s57 ms19x741 MB3.90 GB
Add a function774 ms69 ms11x750 MB3.90 GB
Add a struct field1.41 s71 ms20x765 MB3.90 GB
Nothing changed95 ms23 ms4.1x51 MB3.93 GB
Cold build, until ready13.34 s13.49 s1.0x3.69 GB5.83 GB

hyperfine 1.19.0

Editcargora-jitFastercargo memoryra-jit memory
Edit a function616 ms47 ms13x422 MB3.44 GB
Edit a widely used function660 ms48 ms14x428 MB3.44 GB
Change a signature667 ms98 ms6.8x431 MB3.44 GB
Add a function620 ms51 ms12x421 MB3.44 GB
Add a struct field748 ms83 ms9.0x446 MB3.44 GB
Nothing changed67 ms24 ms2.8x41 MB3.48 GB
Cold build, until ready6.42 s6.82 s1.1x slower2.53 GB2.97 GB

just 1.43.0

Editcargora-jitFastercargo memoryra-jit memory
Edit a function1.04 s52 ms20x539 MB4.02 GB
Edit a widely used function1.07 s52 ms21x534 MB4.02 GB
Change a signature1.05 s83 ms13x535 MB4.02 GB
Add a function1.16 s78 ms15x536 MB4.01 GB
Add a struct field2.58 s158 ms16x650 MB4.03 GB
Nothing changed65 ms23 ms2.8x40 MB4.03 GB
Cold build, until ready9.42 s9.68 s1.0x3.44 GB4.18 GB

axum 0.8.6

Editcargora-jitFastercargo memoryra-jit memory
Edit a function668 ms66 ms10x468 MB3.91 GB
Edit a widely used function1.31 s57 ms23x454 MB3.91 GB
Add a function668 ms67 ms10.0x469 MB3.91 GB
Nothing changed117 ms25 ms4.7x72 MB3.94 GB
Cold build, until ready9.43 s9.87 s1.0x2.46 GB3.25 GB

nushell 0.108.0

Editcargora-jitFastercargo memoryra-jit memory
Edit a function1.83 s293 ms6.3x2.73 GB12.51 GB
Edit a widely used function6.76 s301 ms22x2.71 GB12.50 GB
Change a signature6.83 s372 ms18x2.71 GB12.50 GB
Edit a generic function8.99 s230 ms39x2.72 GB12.53 GB
Add a function1.84 s304 ms6.0x2.74 GB12.53 GB
Add a struct field11.24 s362 ms31x2.74 GB12.52 GB
Nothing changed282 ms30 ms9.4x122 MB12.78 GB
Cold build, until ready46.09 s41.40 s1.1x4.61 GB8.98 GB

helix 25.07.1

Editcargora-jitFastercargo memoryra-jit memory
Edit a function3.07 s90 ms34x2.11 GB13.91 GB
Edit a widely used function4.66 s105 ms44x2.07 GB13.93 GB
Change a signature3.98 s270 ms15x2.07 GB13.93 GB
Add a function3.13 s159 ms20x2.11 GB13.93 GB
Add a struct field11.94 s427 ms28x2.12 GB13.94 GB
Nothing changed134 ms26 ms5.2x65 MB13.85 GB
Cold build, until ready40.67 s39.28 s1.0x3.78 GB6.55 GB

bevy 0.20.0

Editcargora-jitFastercargo memoryra-jit memory
Edit a function3.96 s11.60 s2.9x slower8.48 GB55.78 GB
Edit a widely used function15.07 s12.85 s1.2x8.48 GB55.82 GB
Add a function3.95 s11.79 s3.0x slower8.49 GB85.07 GB
Nothing changed305 ms33 ms9.2x121 MB50.91 GB
Cold build, until ready110.94 s116.98 s1.1x slower8.51 GB10.43 GB

Bold is the fastest of each row.

Over time

Run 1 of 1: 2cf189feb6 on 2026-10-22 03:31 UTC

ripgrep 15.1.0: edit, then build

Each point is a run's median, the band its fastest to slowest edit. Time is on a log scale, so equal steps are equal ratios. Point at a chart, or tap it, to read a run; click a point to open its commit.

Edit a functionra-jit 69 mscargo 787 ms
30 ms100 ms300 ms1 sOct 22
Edit a widely used functionra-jit 54 mscargo 1.18 s
30 ms100 ms300 ms1 sOct 22
Change a signaturera-jit 95 mscargo 957 ms
30 ms100 ms300 ms1 sOct 22
Edit a generic functionra-jit 59 mscargo 1.14 s
30 ms100 ms300 ms1 sOct 22
Add a functionra-jit 80 mscargo 788 ms
30 ms100 ms300 ms1 sOct 22
Add a struct fieldra-jit 78 mscargo 1.31 s
30 ms100 ms300 ms1 sOct 22
Nothing changedra-jit 25 mscargo 36 ms
30 ms100 ms300 ms1 sOct 22

ripgrep 15.1.0: memory while it builds

The most every process doing the work held at once: for ra-jit the daemon, its workers and the command; for plain cargo, cargo itself, rustc and the linker (how). Log scale.

Edit a functionra-jit 3.53 GBcargo 531 MB
30 MB100 MB300 MB1 GB3 GBOct 22
Edit a widely used functionra-jit 3.52 GBcargo 539 MB
30 MB100 MB300 MB1 GB3 GBOct 22
Change a signaturera-jit 3.53 GBcargo 527 MB
30 MB100 MB300 MB1 GB3 GBOct 22
Edit a generic functionra-jit 3.52 GBcargo 536 MB
30 MB100 MB300 MB1 GB3 GBOct 22
Add a functionra-jit 3.52 GBcargo 531 MB
30 MB100 MB300 MB1 GB3 GBOct 22
Add a struct fieldra-jit 3.52 GBcargo 558 MB
30 MB100 MB300 MB1 GB3 GBOct 22
Nothing changedra-jit 3.55 GBcargo 27 MB
30 MB100 MB300 MB1 GB3 GBOct 22
Cold build, until readyra-jit 2.87 GBcargo 2.39 GB
30 MB100 MB300 MB1 GB3 GBOct 22

Cold build, memory and store

Cold build: cargo, and ra-jit until readyra-jit 6.55 sra-jit, warm store 6.54 scargo 6.18 s
02 s4 s6 s8 sOct 22
Daemon between editsafter the edits 3.49 GBonce ready 1.76 GB
01 GB2 GB3 GB4 GBOct 22
On diskra-jit: target, store, home 631 MBcargo: target 407 MB
0200 MB400 MB600 MB800 MBOct 22
Daemon peak memoryra-jit 2.38 GB
01 GB2 GB3 GBOct 22
Store sizera-jit 21 MB
010 MB20 MB30 MBOct 22

Live edits

Edit to running: from the edit leaving the editor to the new code running in the program, on GitHub macos-15 runner. Solid is the median edit, dashed the 90th percentile.

Run 6 of 6: 8ddd87c609 on 2026-10-25 08:59 UTC · CI run

probe, a small program

One edit, sent to the daemonmedian 5.7 ms90th percentile 6.8 ms
10 ms30 ms100 msOct 21Oct 25
Typing, keystroke to runningmedian 11 ms90th percentile 19 ms
10 ms20 ms50 msOct 21Oct 25
Replayed editsmedian 8.6 ms90th percentile 36 ms
10 ms30 ms100 ms300 ms1 sOct 21Oct 25
Save, then cargo ra-jit buildmedian –90th percentile –
30 ms50 ms70 msOct 21Oct 25

Game of Life

One edit, sent to the daemonmedian 25 ms90th percentile 45 ms
20 ms50 ms100 msOct 21Oct 25
Typing, keystroke to runningmedian 19 ms90th percentile 26 ms
20 ms30 ms50 msOct 21Oct 25
Replayed editsmedian 339 ms90th percentile 842 ms
100 ms200 ms500 ms1 s2 sOct 21Oct 25
Save, then cargo ra-jit buildmedian –90th percentile –
50 ms70 ms100 ms150 msOct 21Oct 25

bevy

One edit, sent to the daemonmedian 79 ms90th percentile 260 ms
50 ms100 ms200 msOct 21Oct 25
Typing, keystroke to runningmedian 60 ms90th percentile 125 ms
20 ms50 ms100 msOct 21Oct 25
Replayed editsmedian 202 ms90th percentile 620 ms
100 ms1 s10 sOct 21Oct 25
Save, then cargo ra-jit buildmedian –90th percentile –
100 ms150 ms200 ms300 msOct 21Oct 25

egui

One edit, sent to the daemonmedian 21 ms90th percentile 89 ms
20 ms50 ms100 msOct 21Oct 25
Typing, keystroke to runningmedian 22 ms90th percentile 33 ms
20 ms50 ms100 msOct 21Oct 25
Replayed editsmedian 54 ms90th percentile 127 ms
100 ms1 s10 sOct 21Oct 25
Save, then cargo ra-jit buildmedian –90th percentile –
70 ms100 ms150 ms200 msOct 21Oct 25

Regressions

Each run is compared with the runs before it on the same machine. A number that goes above its noise band opens an issue labelled bench-regression.

The data: docs/benchmarks/history, one line per run.