reference engine barometer

Performance Barometer

A directional north-star view of GocciaScript against QuickJS and Node.js using pinned AWFY and JetStream 3 workloads. Different runtimes have different goals; this is not a product ranking.

Are We Fast Yet6.35×QuickJS reference7.99×Node.js reference

Latest · Oct 11, 2026

JetStream 315.28×QuickJS reference169.30×Node.js reference

Latest · Oct 11, 2026

How to read it1.00×aligned measurement

Above 1.00× means Goccia was proportionally slower.

Retained main-branch reportsLast 30 daysLines break when corpus, driver, subset, or reference-engine versions change.

north-star trend

Are We Fast Yet

Are We Fast Yet reference ratio over timeQuickJS and Node.js reference ratios on a logarithmic scale. One means aligned; values above one mean Goccia was proportionally slower. Lines break when a run is incomplete or measurement versions change.0.8×4.4×24.3×Sep 16, 2026: QuickJS 14.01×, Node.js 17.19×Sep 16, 2026: QuickJS 14.01×, Node.js 17.19×Sep 17, 2026: QuickJS 15.63×, Node.js 18.94×Sep 17, 2026: QuickJS 15.63×, Node.js 18.94×Sep 18, 2026: QuickJS 13.81×, Node.js 17.00×Sep 18, 2026: QuickJS 13.81×, Node.js 17.00×Sep 19, 2026: QuickJS 15.97×, Node.js 19.13×Sep 19, 2026: QuickJS 15.97×, Node.js 19.13×Sep 23, 2026: QuickJS 15.91×, Node.js 19.17×Sep 23, 2026: QuickJS 15.91×, Node.js 19.17×Sep 25, 2026: QuickJS 16.03×, Node.js 17.15×Sep 25, 2026: QuickJS 16.03×, Node.js 17.15×Sep 26, 2026: QuickJS 14.23×, Node.js 17.40×Sep 26, 2026: QuickJS 14.23×, Node.js 17.40×Sep 27, 2026: QuickJS 14.35×, Node.js 17.73×Sep 27, 2026: QuickJS 14.35×, Node.js 17.73×Sep 28, 2026: QuickJS 15.81×, Node.js 18.89×Sep 28, 2026: QuickJS 15.81×, Node.js 18.89×Sep 29, 2026: QuickJS 14.54×, Node.js 17.66×Sep 29, 2026: QuickJS 14.54×, Node.js 17.66×Sep 30, 2026: QuickJS 13.46×, Node.js 15.64×Sep 30, 2026: QuickJS 13.46×, Node.js 15.64×Oct 1, 2026: QuickJS 15.52×, Node.js 18.31×Oct 1, 2026: QuickJS 15.52×, Node.js 18.31×Oct 2, 2026: QuickJS 8.05×, Node.js 9.92×Oct 2, 2026: QuickJS 8.05×, Node.js 9.92×Oct 3, 2026: QuickJS 7.71×, Node.js 8.81×Oct 3, 2026: QuickJS 7.71×, Node.js 8.81×Oct 4, 2026: QuickJS 7.80×, Node.js 9.14×Oct 4, 2026: QuickJS 7.80×, Node.js 9.14×Oct 5, 2026: QuickJS 5.89×, Node.js 6.52×Oct 5, 2026: QuickJS 5.89×, Node.js 6.52×Oct 6, 2026: QuickJS 5.90×, Node.js 6.42×Oct 6, 2026: QuickJS 5.90×, Node.js 6.42×Oct 8, 2026: QuickJS 7.43×, Node.js 9.10×Oct 8, 2026: QuickJS 7.43×, Node.js 9.10×Oct 9, 2026: QuickJS 5.70×, Node.js 6.22×Oct 9, 2026: QuickJS 5.70×, Node.js 6.22×Oct 10, 2026: QuickJS 7.36×, Node.js 8.52×Oct 10, 2026: QuickJS 7.36×, Node.js 8.52×Oct 11, 2026: QuickJS 6.35×, Node.js 7.99×Oct 11, 2026: QuickJS 6.35×, Node.js 7.99×Sep 16Oct 11
  • QuickJS reference
  • Node.js reference
  • Incomplete run
Are We Fast Yet chart data
DateQuickJSNode.jsStatusCommit
Sep 16, 202614.01×17.19×Completeb13e366b
Sep 17, 202615.63×18.94×Complete8ba697aa
Sep 18, 202613.81×17.00×Complete13751a63
Sep 19, 202615.97×19.13×Complete26613bb7
Sep 23, 202615.91×19.17×Completefdc29f08
Sep 25, 202616.03×17.15×Completeb75b5631
Sep 26, 202614.23×17.40×Complete8c2e6c53
Sep 27, 202614.35×17.73×Completef4eae9a5
Sep 28, 202615.81×18.89×Complete72cb2050
Sep 29, 202614.54×17.66×Completebbce472b
Sep 30, 202613.46×15.64×Complete55a16cb1
Oct 1, 202615.52×18.31×Completec6edcfca
Oct 2, 20268.05×9.92×Completef300bb6b
Oct 3, 20267.71×8.81×Complete715bb157
Oct 4, 20267.80×9.14×Complete5676f39e
Oct 5, 20265.89×6.52×Complete9e1f766d
Oct 6, 20265.90×6.42×Complete5ef92216
Oct 8, 20267.43×9.10×Complete66acf6e6
Oct 9, 20265.70×6.22×Completebd640180
Oct 10, 20267.36×8.52×Complete3aa516e5
Oct 11, 20266.35×7.99×Complete29ee857e

north-star trend

JetStream 3

JetStream 3 reference ratio over timeQuickJS and Node.js reference ratios on a logarithmic scale. One means aligned; values above one mean Goccia was proportionally slower. Lines break when a run is incomplete or measurement versions change.0.6×17.8×502.0×Sep 16, 2026: QuickJS 25.64×, Node.js 290.17×Sep 16, 2026: QuickJS 25.64×, Node.js 290.17×Sep 17, 2026: QuickJS 24.53×, Node.js 280.18×Sep 17, 2026: QuickJS 24.53×, Node.js 280.18×Sep 17, 2026: QuickJS 24.36×, Node.js 263.72×Sep 17, 2026: QuickJS 24.36×, Node.js 263.72×Sep 18, 2026: QuickJS 26.45×, Node.js 288.14×Sep 18, 2026: QuickJS 26.45×, Node.js 288.14×Sep 18, 2026: QuickJS 25.80×, Node.js 290.22×Sep 18, 2026: QuickJS 25.80×, Node.js 290.22×Sep 19, 2026: QuickJS 24.87×, Node.js 281.42×Sep 19, 2026: QuickJS 24.87×, Node.js 281.42×Sep 23, 2026: QuickJS 26.60×, Node.js 308.28×Sep 23, 2026: QuickJS 26.60×, Node.js 308.28×Sep 25, 2026: QuickJS 24.68×, Node.js 288.05×Sep 25, 2026: QuickJS 24.68×, Node.js 288.05×Sep 25, 2026: QuickJS 26.59×, Node.js 292.19×Sep 25, 2026: QuickJS 26.59×, Node.js 292.19×Sep 25, 2026: QuickJS 25.92×, Node.js 282.75×Sep 25, 2026: QuickJS 25.92×, Node.js 282.75×Sep 25, 2026: QuickJS 26.32×, Node.js 290.95×Sep 25, 2026: QuickJS 26.32×, Node.js 290.95×Sep 25, 2026: QuickJS 26.06×, Node.js 288.97×Sep 25, 2026: QuickJS 26.06×, Node.js 288.97×Sep 25, 2026: QuickJS 26.98×, Node.js 297.34×Sep 25, 2026: QuickJS 26.98×, Node.js 297.34×Sep 25, 2026: QuickJS 25.87×, Node.js 285.17×Sep 25, 2026: QuickJS 25.87×, Node.js 285.17×Sep 25, 2026: QuickJS 29.28×, Node.js 316.68×Sep 25, 2026: QuickJS 29.28×, Node.js 316.68×Sep 25, 2026: QuickJS 25.86×, Node.js 290.12×Sep 25, 2026: QuickJS 25.86×, Node.js 290.12×Sep 25, 2026: QuickJS 26.60×, Node.js 296.27×Sep 25, 2026: QuickJS 26.60×, Node.js 296.27×Sep 25, 2026: QuickJS 25.74×, Node.js 288.40×Sep 25, 2026: QuickJS 25.74×, Node.js 288.40×Sep 26, 2026: QuickJS 26.15×, Node.js 301.04×Sep 26, 2026: QuickJS 26.15×, Node.js 301.04×Sep 27, 2026: QuickJS 27.14×, Node.js 309.63×Sep 27, 2026: QuickJS 27.14×, Node.js 309.63×Sep 28, 2026: QuickJS 26.68×, Node.js 299.72×Sep 28, 2026: QuickJS 26.68×, Node.js 299.72×Sep 28, 2026: QuickJS 25.34×, Node.js 275.88×Sep 28, 2026: QuickJS 25.34×, Node.js 275.88×Sep 28, 2026: QuickJS 26.18×, Node.js 287.57×Sep 28, 2026: QuickJS 26.18×, Node.js 287.57×Sep 28, 2026: QuickJS 26.22×, Node.js 298.90×Sep 28, 2026: QuickJS 26.22×, Node.js 298.90×Sep 28, 2026: QuickJS 26.88×, Node.js 314.15×Sep 28, 2026: QuickJS 26.88×, Node.js 314.15×Sep 28, 2026: QuickJS 24.97×, Node.js 273.39×Sep 28, 2026: QuickJS 24.97×, Node.js 273.39×Sep 28, 2026: QuickJS 26.44×, Node.js 297.33×Sep 28, 2026: QuickJS 26.44×, Node.js 297.33×Sep 28, 2026: QuickJS 27.20×, Node.js 295.27×Sep 28, 2026: QuickJS 27.20×, Node.js 295.27×Sep 28, 2026: QuickJS 25.80×, Node.js 298.62×Sep 28, 2026: QuickJS 25.80×, Node.js 298.62×Sep 28, 2026: QuickJS 25.63×, Node.js 296.17×Sep 28, 2026: QuickJS 25.63×, Node.js 296.17×Sep 29, 2026: QuickJS 25.99×, Node.js 293.08×Sep 29, 2026: QuickJS 25.99×, Node.js 293.08×Sep 30, 2026: QuickJS 26.26×, Node.js 296.51×Sep 30, 2026: QuickJS 26.26×, Node.js 296.51×Oct 1, 2026: QuickJS 26.96×, Node.js 295.42×Oct 1, 2026: QuickJS 26.96×, Node.js 295.42×Oct 1, 2026: QuickJS 26.77×, Node.js 300.51×Oct 1, 2026: QuickJS 26.77×, Node.js 300.51×Oct 1, 2026: QuickJS 24.70×, Node.js 283.39×Oct 1, 2026: QuickJS 24.70×, Node.js 283.39×Oct 2, 2026: QuickJS 21.85×, Node.js 249.74×Oct 2, 2026: QuickJS 21.85×, Node.js 249.74×Oct 2, 2026: QuickJS 20.32×, Node.js 227.89×Oct 2, 2026: QuickJS 20.32×, Node.js 227.89×Oct 2, 2026: QuickJS 20.60×, Node.js 213.48×Oct 2, 2026: QuickJS 20.60×, Node.js 213.48×Oct 2, 2026: QuickJS 20.14×, Node.js 217.06×Oct 2, 2026: QuickJS 20.14×, Node.js 217.06×Oct 2, 2026: QuickJS 20.38×, Node.js 219.24×Oct 2, 2026: QuickJS 20.38×, Node.js 219.24×Oct 2, 2026: QuickJS 18.44×, Node.js 212.05×Oct 2, 2026: QuickJS 18.44×, Node.js 212.05×Oct 3, 2026: QuickJS 17.79×, Node.js 207.86×Oct 3, 2026: QuickJS 17.79×, Node.js 207.86×Oct 3, 2026: QuickJS 17.40×, Node.js 193.87×Oct 3, 2026: QuickJS 17.40×, Node.js 193.87×Oct 3, 2026: QuickJS 16.33×, Node.js 188.70×Oct 3, 2026: QuickJS 16.33×, Node.js 188.70×Oct 3, 2026: QuickJS 16.57×, Node.js 179.52×Oct 3, 2026: QuickJS 16.57×, Node.js 179.52×Oct 3, 2026: QuickJS 14.96×, Node.js 164.39×Oct 3, 2026: QuickJS 14.96×, Node.js 164.39×Oct 3, 2026: QuickJS 15.49×, Node.js 178.05×Oct 3, 2026: QuickJS 15.49×, Node.js 178.05×Oct 4, 2026: QuickJS 16.46×, Node.js 184.14×Oct 4, 2026: QuickJS 16.46×, Node.js 184.14×Oct 5, 2026: QuickJS 15.76×, Node.js 178.96×Oct 5, 2026: QuickJS 15.76×, Node.js 178.96×Oct 5, 2026: QuickJS 15.21×, Node.js 172.31×Oct 5, 2026: QuickJS 15.21×, Node.js 172.31×Oct 5, 2026: QuickJS 15.91×, Node.js 182.80×Oct 5, 2026: QuickJS 15.91×, Node.js 182.80×Oct 5, 2026: QuickJS 16.29×, Node.js 177.10×Oct 5, 2026: QuickJS 16.29×, Node.js 177.10×Oct 5, 2026: QuickJS 14.57×, Node.js 153.35×Oct 5, 2026: QuickJS 14.57×, Node.js 153.35×Oct 5, 2026: QuickJS 15.30×, Node.js 174.08×Oct 5, 2026: QuickJS 15.30×, Node.js 174.08×Oct 6, 2026: QuickJS 14.27×, Node.js 156.45×Oct 6, 2026: QuickJS 14.27×, Node.js 156.45×Oct 6, 2026: QuickJS 15.41×, Node.js 171.98×Oct 6, 2026: QuickJS 15.41×, Node.js 171.98×Oct 8, 2026: QuickJS 15.70×, Node.js 173.95×Oct 8, 2026: QuickJS 15.70×, Node.js 173.95×Oct 9, 2026: QuickJS 15.61×, Node.js 168.57×Oct 9, 2026: QuickJS 15.61×, Node.js 168.57×Oct 9, 2026: QuickJS 14.61×, Node.js 170.25×Oct 9, 2026: QuickJS 14.61×, Node.js 170.25×Oct 9, 2026: QuickJS 14.43×, Node.js 155.17×Oct 9, 2026: QuickJS 14.43×, Node.js 155.17×Oct 10, 2026: QuickJS 14.88×, Node.js 166.11×Oct 10, 2026: QuickJS 14.88×, Node.js 166.11×Oct 10, 2026: QuickJS 15.64×, Node.js 163.41×Oct 10, 2026: QuickJS 15.64×, Node.js 163.41×Oct 10, 2026: QuickJS 15.11×, Node.js 175.05×Oct 10, 2026: QuickJS 15.11×, Node.js 175.05×Oct 10, 2026: QuickJS 16.31×, Node.js 185.49×Oct 10, 2026: QuickJS 16.31×, Node.js 185.49×Oct 10, 2026: QuickJS 14.69×, Node.js 153.57×Oct 10, 2026: QuickJS 14.69×, Node.js 153.57×Oct 11, 2026: QuickJS 15.22×, Node.js 174.85×Oct 11, 2026: QuickJS 15.22×, Node.js 174.85×Oct 11, 2026: QuickJS 15.97×, Node.js 179.29×Oct 11, 2026: QuickJS 15.97×, Node.js 179.29×Oct 11, 2026: QuickJS 15.08×, Node.js 167.22×Oct 11, 2026: QuickJS 15.08×, Node.js 167.22×Oct 11, 2026: QuickJS 14.82×, Node.js 151.24×Oct 11, 2026: QuickJS 14.82×, Node.js 151.24×Oct 11, 2026: QuickJS 15.10×, Node.js 163.03×Oct 11, 2026: QuickJS 15.10×, Node.js 163.03×Oct 11, 2026: QuickJS 15.47×, Node.js 172.75×Oct 11, 2026: QuickJS 15.47×, Node.js 172.75×Oct 11, 2026: QuickJS 15.76×, Node.js 177.90×Oct 11, 2026: QuickJS 15.76×, Node.js 177.90×Oct 11, 2026: QuickJS 16.31×, Node.js 166.63×Oct 11, 2026: QuickJS 16.31×, Node.js 166.63×Oct 11, 2026: QuickJS 15.28×, Node.js 169.30×Oct 11, 2026: QuickJS 15.28×, Node.js 169.30×Sep 16Oct 11
  • QuickJS reference
  • Node.js reference
  • Incomplete run
JetStream 3 chart data
DateQuickJSNode.jsStatusCommit
Sep 16, 202625.64×290.17×Completeb13e366b
Sep 17, 202624.53×280.18×Complete859e8055
Sep 17, 202624.36×263.72×Complete8ba697aa
Sep 18, 202626.45×288.14×Completee6ee0542
Sep 18, 202625.80×290.22×Complete13751a63
Sep 19, 202624.87×281.42×Complete26613bb7
Sep 23, 202626.60×308.28×Completefdc29f08
Sep 25, 202624.68×288.05×Complete6a6965bf
Sep 25, 202626.59×292.19×Complete0c16d2a4
Sep 25, 202625.92×282.75×Complete6281a93a
Sep 25, 202626.32×290.95×Completef3d7a5b1
Sep 25, 202626.06×288.97×Completed8b691b7
Sep 25, 202626.98×297.34×Complete5b277ac0
Sep 25, 202625.87×285.17×Complete7aa2db5b
Sep 25, 202629.28×316.68×Complete8f6b6549
Sep 25, 202625.86×290.12×Completebe1c2177
Sep 25, 202626.60×296.27×Complete4964b74b
Sep 25, 202625.74×288.40×Completeb75b5631
Sep 26, 202626.15×301.04×Complete8c2e6c53
Sep 27, 202627.14×309.63×Completef4eae9a5
Sep 28, 202626.68×299.72×Complete39c045d7
Sep 28, 202625.34×275.88×Completef3c7b7a8
Sep 28, 202626.18×287.57×Complete3d841fee
Sep 28, 202626.22×298.90×Complete2f4fcb3b
Sep 28, 202626.88×314.15×Completeeb0abd4d
Sep 28, 202624.97×273.39×Complete60e971bf
Sep 28, 202626.44×297.33×Completeb4caa868
Sep 28, 202627.20×295.27×Completeb09878c9
Sep 28, 202625.80×298.62×Completec81cf817
Sep 28, 202625.63×296.17×Complete72cb2050
Sep 29, 202625.99×293.08×Completebbce472b
Sep 30, 202626.26×296.51×Complete55a16cb1
Oct 1, 202626.96×295.42×Complete3e59e81b
Oct 1, 202626.77×300.51×Complete84a7f90b
Oct 1, 202624.70×283.39×Completec6edcfca
Oct 2, 202621.85×249.74×Complete39b3125c
Oct 2, 202620.32×227.89×Complete056f6671
Oct 2, 202620.60×213.48×Complete78189cbc
Oct 2, 202620.14×217.06×Completecfffa690
Oct 2, 202620.38×219.24×Complete01b18742
Oct 2, 202618.44×212.05×Completef300bb6b
Oct 3, 202617.79×207.86×Complete76a20f17
Oct 3, 202617.40×193.87×Complete47915bc9
Oct 3, 202616.33×188.70×Complete44498efe
Oct 3, 202616.57×179.52×Complete9b414b09
Oct 3, 202614.96×164.39×Completee816e44e
Oct 3, 202615.49×178.05×Complete715bb157
Oct 4, 202616.46×184.14×Complete5676f39e
Oct 5, 202615.76×178.96×Completec7fd1ffb
Oct 5, 202615.21×172.31×Complete08a5fd6f
Oct 5, 202615.91×182.80×Complete39ac9d24
Oct 5, 202616.29×177.10×Complete531fb523
Oct 5, 202614.57×153.35×Completea799e2d1
Oct 5, 202615.30×174.08×Complete9e1f766d
Oct 6, 202614.27×156.45×Complete879344c9
Oct 6, 202615.41×171.98×Complete5ef92216
Oct 8, 202615.70×173.95×Complete66acf6e6
Oct 9, 202615.61×168.57×Completeb82e33f3
Oct 9, 202614.61×170.25×Complete79061b66
Oct 9, 202614.43×155.17×Completebd640180
Oct 10, 202614.88×166.11×Complete0a7b3166
Oct 10, 202615.64×163.41×Complete9e0c14fc
Oct 10, 202615.11×175.05×Complete93c538b6
Oct 10, 202616.31×185.49×Complete3f02f526
Oct 10, 202614.69×153.57×Complete3aa516e5
Oct 11, 202615.22×174.85×Completee6bcd2db
Oct 11, 202615.97×179.29×Complete05c22a5f
Oct 11, 202615.08×167.22×Complete2f8adec4
Oct 11, 202614.82×151.24×Complete358cf26e
Oct 11, 202615.10×163.03×Complete6b61d2a4
Oct 11, 202615.47×172.75×Completebae01414
Oct 11, 202615.76×177.90×Completea80d0daa
Oct 11, 202616.31×166.63×Complete8113298e
Oct 11, 202615.28×169.30×Complete29ee857e

latest report detail

Workload measurements

Are We Fast Yet

WorkloadGocciaQuickJSNode.jsQJS ratioNode ratioStatus
Bounce7.65ms1.08ms1.05ms7.10×7.29×Complete
CD122.45ms9.86ms9.22ms12.41×13.28×Complete
DeltaBlue2.14ms292.32µs1.61ms7.33×1.33×Complete
Havlak42.84s4.13s186.55ms10.37×229.63×Complete
Json127.24ms14.04ms4.22ms9.06×30.18×Complete
List4.66ms991.38µs733.83µs4.70×6.35×Complete
Mandelbrot25.18µs5.78µs87.06µs4.36×0.29×Complete
NBody232.55µs30.58µs373.09µs7.61×0.62×Complete
Permute9.41ms1.84ms737.00µs5.10×12.76×Complete
Queens5.42ms1.30ms1.05ms4.16×5.17×Complete
Richards212.54ms52.20ms6.50ms4.07×32.71×Complete
Sieve4.87ms572.77µs509.61µs8.50×9.55×Complete
Storage17.00ms3.07ms1.06ms5.53×16.09×Complete
Towers13.70ms3.07ms1.09ms4.46×12.61×Complete

JetStream 3

WorkloadGocciaQuickJSNode.jsQJS ratioNode ratioStatus
hash-map1.19 pts13.78 pts341.74 pts11.60×287.77×Complete
ai-astar5.42 pts70.98 pts522.56 pts13.09×96.34×Complete
gaussian-blur0.53 pts7.91 pts297.22 pts14.99×563.18×Complete
raytrace-public-class-fields0.65 pts11.12 pts195.19 pts17.23×302.30×Complete
sync-fs2.74 pts47.05 pts341.04 pts17.17×124.46×Complete
lazy-collections4.87 pts92.02 pts195.30 pts18.89×40.09×Complete

Incomplete runs remain visible as gaps. The last complete measurement is labeled stale rather than carried forward as current.