Reduce memory usage of |meld

Reduce memory usage of |meld

May 4, 2022

Reward: 1 star

Grantee(s): ~winter-paches

CanceledApprenticeshipDev: Core

UF Grant: Reduce memory usage of |meld

This project delivers massive quality-of-life improvement to urbit pilots. Our global deduplicator |meld is currently an essential tool for managing a ship, but it can require unacceptable amounts of memory. Fixing this will involve implementing yet another hashtable (most likely a HAMT), and possibly a new implementation of unifying noun equality. Martians everywhere will sing your praises.

Deliverables

|meld without 10 GB of swap

User Stories

Pilots are happily oblivious to the OOM killer

Prequisites

  • proficiency in C
  • familiarity with immutable data structures

Educational Outcomes for the Apprentice

The apprentice will learn about:

  • vere/u3
  • the loom
  • unifying equality
  • efficient associate memory

Responsibilities of the Mentor

  • technical direction
  • code review
  • release plan

Duration and Compensation

Expected duration is two months. 1 star paid at completion of apprenticeship