Home | History | Annotate | Download | only in runtime

Lines Matching defs:sweep

14 var sweep sweepdata
16 // State of background sweep.
35 // sweep any unswept spans. If this is a concurrent GC, there
36 // shouldn't be any spans left to sweep, so this should finish
37 // instantly. If GC was forced before the concurrent sweep
38 // finished, there may be spans to sweep.
40 sweep.npausesweep++
47 sweep.g = getg()
49 lock(&sweep.lock)
50 sweep.parked = true
52 goparkunlock(&sweep.lock, "GC sweep wait", traceEvGoBlock, 1)
56 sweep.nbgsweep++
62 lock(&sweep.lock)
67 unlock(&sweep.lock)
70 sweep.parked = true
71 goparkunlock(&sweep.lock, "GC sweep wait", traceEvGoBlock, 1)
76 // returns number of pages returned to heap, or ^uintptr(0) if there is nothing to sweep
83 // in the middle of sweep thus leaving the span in an inconsistent state for next GC
101 // swept this span, but in that case the sweep
113 if !s.sweep(false) {
126 print("pacer: sweep done at heap size ", memstats.heap_live>>20, "MB; allocated ", (memstats.heap_live-mheap_.sweepHeapLiveBasis)>>20, "MB during sweep; swept ", mheap_.pagesSwept, " pages at ", sweepRatio, " pages/byte\n")
164 s.sweep(false)
173 // Sweep frees or collects finalizers for blocks not marked in the mark phase.
179 func (s *mspan) sweep(preserve bool) bool {
298 throw("sweep increased allocation count")
326 throw("MSpan_Sweep: bad span state after sweep")
373 // deductSweepCredit deducts sweep credit for allocating a span of
377 // also sweep pages (e.g., for a large allocation), it can pass a
384 // deductSweepCredit is the core of the "proportional sweep" system.
387 // sweep phase between GC cycles.
392 // Proportional sweep is done or disabled.
412 // Sweep pacing changed. Recompute debt.