~

Roadmap

Make Urbit Fast

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)

start date

2023-01-01

end date

2024-01-15

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

start date

2022-01-01

end date

2024-02-29

Ares is a rewrite of the Nock interpreter for much higher performance and data capacity.

Current

Directed Messaging

duration

3-6 Months

start date

2023-10-01

end date

2024-04-01

An overhaul of Urbit's networking stack for much higher throughput and increased connection stability.

Next Up

HTTP Scrying: Vere

duration

2 weeks

This greatly improves the performance of HTTP scrying.