IntersectMBO / IntersectMBO/ouroboros-consensus
Consider use of compact regions to reduce GC times
Open
🏎️ performance
enhancement
- Dominant language
- Haskell
- Stars
- 67
- Forks
- 43
- Avg merge
- 5d 13h
- Merged PRs (30d)
- 43
Description
A large chunk of the data stored by consensus is the ledger state. A ledger state in principle is a single value; ideally it would be GCed and traversed as a whole, an obvious candidate for compact regions. There are some technical difficulties with this (pinned data for instance), but also some fundamental ones: we'd still like to maintain sharing between _multiple_ ledger states. Not an easy problem, but perhaps worth thinking about at some stage..
Possibly useful reading: https://tech.channable.com/posts/2020-04-07-lessons-in-managing-haskell-memory.html .
Contributor guide
Assessment
This issue has not been assessed yet.