microsoft / microsoft/mimalloc

Consider using restartable sequences

Open
#315 3 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
13.4k
Forks
1.2k
Avg merge
4d 45m
Merged PRs (30d)
13

Description

Restartable sequences is a Linux feature that allows creating wait-free per CPU data structures. You can read more about it here https://lwn.net/Articles/662946/ and here https://www.efficios.com/blog/2019/02/08/linux-restartable-sequences/. You can read about how tcmalloc is using it here https://google.github.io/tcmalloc/design.html. It can be used to move to per CPU arenas instead of per thread arenas.

It might not be a high priority to implement, but I wanted to raise awareness of restartable sequences.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the linked LWN, EfficiOS, and tcmalloc design articles to understand restartable sequences and their use for per-CPU arenas. The issue names no source files, tests, or entry points and does not define an implementation scope or completion criteria.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
operating-systems, performance
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.