aboutsummaryrefslogtreecommitdiff
path: root/src/runtime/mheap.go
AgeCommit message (Expand)Author
2020-05-21runtime: add a barrier after a new span is allocatedCherry Zhang
2020-05-14runtime: make maxOffAddr reflect the actual address space upper boundMichael Anthony Knyszek
2020-05-08runtime: remove scavAddr in favor of address rangesMichael Anthony Knyszek
2020-05-07runtime: avoid overflow in (*mheap).growMichael Anthony Knyszek
2020-04-27runtime: add new mcentral implementationMichael Anthony Knyszek
2020-04-21runtime: add bitmap-based markrootSpans implementationMichael Anthony Knyszek
2020-04-21runtime: allow proflock and mheap.speciallock above globalAlloc.mutexMichael Pratt
2020-04-07runtime: static lock ranking for the runtime (enabled by GOEXPERIMENT)Dan Scales
2020-02-24runtime: remove mcache field from mIan Lance Taylor
2020-01-09runtime: add scavtrace debug flag and remove scavenge info from gctraceMichael Anthony Knyszek
2020-01-07runtime: avoid potential deadlock when tracing memory codeDan Scales
2019-11-27runtime: reset scavenge address in scavengeAllMichael Anthony Knyszek
2019-11-15all: fix a bunch of misspellingsVille Skyttä
2019-11-08runtime: add per-p page allocation cacheMichael Anthony Knyszek
2019-11-08runtime: add per-p mspan cacheMichael Anthony Knyszek
2019-11-08runtime: rearrange mheap_.alloc* into allocSpanMichael Anthony Knyszek
2019-11-08runtime: make more page sweeper operations atomicMichael Anthony Knyszek
2019-11-08runtime: remove unnecessary large parameter to mheap_.allocMichael Anthony Knyszek
2019-11-08runtime: define maximum supported physical page and huge page sizesMichael Anthony Knyszek
2019-11-08runtime: ensure heap memstats are updated atomicallyMichael Anthony Knyszek
2019-11-08runtime: remove useless heap_objects accountingMichael Anthony Knyszek
2019-11-08runtime: make allocNeedsZero lock-freeMichael Anthony Knyszek
2019-11-08runtime: remove old page allocatorMichael Anthony Knyszek
2019-11-07runtime: compute whether a span needs zeroing in the new page allocatorMichael Anthony Knyszek
2019-11-07runtime: integrate new page allocator into runtimeMichael Anthony Knyszek
2019-11-07runtime: make the scavenger self-pacedMichael Anthony Knyszek
2019-11-04runtime: clean up power-of-two rounding code with align functionsMichael Anthony Knyszek
2019-10-31runtime: atomically set span state and use as publication barrierAustin Clements
2019-10-31runtime: fully initialize span in alloc_mAustin Clements
2019-09-26runtime: fix lock acquire cycles related to scavenge.lockMichael Anthony Knyszek
2019-09-25runtime: scavenge on growth instead of inline with allocationMichael Anthony Knyszek
2019-09-25runtime: grow the heap incrementallyAustin Clements
2019-07-30runtime: call sysHugePage less oftenMichael Knyszek
2019-07-30runtime: add physHugePageShiftMichael Anthony Knyszek
2019-05-24runtime: ensure mheap lock stack growth invariant is maintainedMichael Anthony Knyszek
2019-05-16runtime: mark newly-mapped memory as scavengedMichael Anthony Knyszek
2019-05-09runtime: split spans when scavenging if it's more than we needMichael Anthony Knyszek
2019-05-09runtime: add background scavengerMichael Anthony Knyszek
2019-05-09runtime: remove periodic scavengingMichael Anthony Knyszek
2019-05-06runtime: ensure free and unscavenged spans may be backed by huge pagesMichael Anthony Knyszek
2019-05-06runtime: split spans during allocation without treap removalMichael Anthony Knyszek
2019-05-06runtime: track the number of free unscavenged huge pagesMichael Anthony Knyszek
2019-05-06runtime: scavenge huge spans firstMichael Anthony Knyszek
2019-05-06runtime: make treap iteration more efficientMichael Anthony Knyszek
2019-05-06runtime: merge all treaps into one implementationMichael Anthony Knyszek
2019-05-05all: remove commented-out print statementsIskander Sharipov
2019-05-01runtime: change the span allocation policy to first-fitMichael Anthony Knyszek
2019-04-10runtime: introduce treapForSpan to reduce code duplicationMichael Anthony Knyszek
2019-04-10runtime: throw if scavenge necessary during coalescingMichael Anthony Knyszek
2019-04-08runtime: use iterator instead of raw node for treap findMichael Anthony Knyszek