microsoft / microsoft/mimalloc

Evaluate an idea about PGO for optimizing heap allocations with Mimalloc

Open
#1,129 0 comments 3 reactions 0 assignees View on GitHub
Dominant language
C
Stars
13.4k
Forks
1.2k
Avg merge
4d 45m
Merged PRs (30d)
13

Description

Hi!

A few days ago, I was watching a talk about TCMalloc's work on trying to optimize heap allocations based on runtime gathered statistics (like PGO). The materials are located [here](https://github.com/valexey/tcmalloc_hot_cold/tree/main) (slides are [here](https://github.com/valexey/tcmalloc_hot_cold/blob/main/TCMalloc%20hot%26cold.pdf)). I recommend to read all slides but the PGO part starts from page 36.

Since `mimalloc` is a performance-oriented allocator, I wanted to suggest an idea to `mimalloc` authors to evaluate a similar idea for `mimalloc`. I don't have enough knowledge about `mimalloc`'s internals, but I guess if the idea kinda works/promising for TCMalloc - it could be useful for other allocators too.

Thank you.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading the linked TCMalloc hot/cold materials, especially the PGO section beginning on page 36, then study mimalloc's allocator internals. The issue is complete when the PGO-inspired heap-allocation optimization has been evaluated for mimalloc and its usefulness or limitations are documented.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.