Larger blocks are more convenient for compressions.
Blocks are allocated with MmapNoReserveOrDie to save some memory.
Also it's 15% faster on StackDepotBenchmarkSuite
Depends on D114464.
Differential D114488
[sanitizer] Switch StackStore to 8 MiB blocks vitalybuka on Nov 23 2021, 5:03 PM. Authored by
Details
Diff Detail
Unit Tests
Event TimelineComment Actions I think this could be a thin wrapper around TwoLevelMap.
Comment Actions yep. I need to pack and unmap blocks, which is not supported by TwoLevelMap. If we add that into TwoLevelMap it will be more branching or syncronization of fast path of TwoLevelMap which is used is allocator.
|
Does this = {} do anything? It confuses me. It produces impression that it initializes something, but does it?