Summary
Urbit has never been seriously optimized for performance, and that's changing in early 2024.
The Ares project lays the groundwork for fast Nock execution and presents many opportunities for ongoing optimization. The project was in R&D throughout 2022 to determine viability and entered implementation in 2023, and is slated for initial release in Q1 of 2024.
Separately, Urbit's networking is slow due to inefficient encryption and event log (i.e. disk write) overhead incurred from handling individual packets in Ames' congestion control algorithm. In the latter half of 2023 we identified a way to significantly simplify Urbit's networking stack and move compute-heavy computation into the runtime, which will produce a roughly 1000x improvement in network throughput.
Projects
Completed
Informal Ping
Introduces an informal (stateless) ping mechanism, moving route maintenance out of arvo and dramatically reducing the load on galaxies, without requiring operator configuration.
Completed
Persistent Nock Caching
Modifies Hoon's ~+ rune to emit a new variant of the %memo Nock memoization hint that includes a path and is expected to be cached persistently, across multiple Arvo events, by the runtime.
Current
Ares: Persistent Memory Arena (PMA)
Ares has a novel scheme for ensuring copy-on-write semantics for memory pages in a way that minimizes disk write amplification when taking an incremental snapshot.
Current
Ares: Initial Release
Ares is a rewrite of the Nock interpreter for much higher performance and data capacity.
Current
Directed Messaging
An overhaul of Urbit's networking stack for much higher throughput and increased connection stability.
Next Up
HTTP Scrying: Vere
This greatly improves the performance of HTTP scrying.