Search Options

Results per page
Sort
Preferred Languages
Advance

Results 21 - 30 of 47 for stw (0.09 sec)

  1. src/runtime/heapdump.go

    package runtime
    
    import (
    	"internal/abi"
    	"internal/goarch"
    	"unsafe"
    )
    
    //go:linkname runtime_debug_WriteHeapDump runtime/debug.WriteHeapDump
    func runtime_debug_WriteHeapDump(fd uintptr) {
    	stw := stopTheWorld(stwWriteHeapDump)
    
    	// Keep m on this G's stack instead of the system stack.
    	// Both readmemstats_m and writeheapdump_m have pretty large
    	// peak stack depths and we risk blowing the system stack.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 09 04:07:57 UTC 2024
    - 17.6K bytes
    - Viewed (0)
  2. src/runtime/mspanset.go

    	// system. We never release spine memory because there could be
    	// concurrent lock-free access and we're likely to reuse it
    	// anyway. (In principle, we could do this during STW.)
    
    	spineLock mutex
    	spine     atomicSpanSetSpinePointer // *[N]atomic.Pointer[spanSetBlock]
    	spineLen  atomic.Uintptr            // Spine array length
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 13.1K bytes
    - Viewed (0)
  3. src/runtime/tracestatus.go

    // writeProcStatusForP emits a ProcStatus event for the provided p based on its status.
    //
    // The caller must fully own pp and it must be prevented from transitioning (e.g. this can be
    // called by a forEachP callback or from a STW).
    func (w traceWriter) writeProcStatusForP(pp *p, inSTW bool) traceWriter {
    	if !pp.trace.acquireStatus(w.gen) {
    		return w
    	}
    	var status traceProcStatus
    	switch pp.status {
    	case _Pidle, _Pgcstop:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 15 17:03:35 UTC 2024
    - 7.2K bytes
    - Viewed (0)
  4. src/runtime/metrics_test.go

    	}
    	t.Errorf(`time.Sleep did not contribute enough to "idle" class: minimum idle time = %.5fs`, minIdleCPUSeconds)
    }
    
    // Call f() and verify that the correct STW metrics increment. If isGC is true,
    // fn triggers a GC STW. Otherwise, fn triggers an other STW.
    func testSchedPauseMetrics(t *testing.T, fn func(t *testing.T), isGC bool) {
    	m := []metrics.Sample{
    		{Name: "/sched/pauses/stopping/gc:seconds"},
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:52:17 UTC 2024
    - 45K bytes
    - Viewed (0)
  5. src/runtime/traceruntime.go

    	trace.seqGC++
    }
    
    // STWStart traces a STWBegin event.
    func (tl traceLocker) STWStart(reason stwReason) {
    	// Although the current P may be in _Pgcstop here, we model the P as running during the STW. This deviates from the
    	// runtime's state tracking, but it's more accurate and doesn't result in any loss of information.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 22:31:00 UTC 2024
    - 25.7K bytes
    - Viewed (0)
  6. src/runtime/HACKING.md

      the locked region, reads do not need to be atomic, but the write
      does. Outside the locked region, reads need to be atomic.
    
    * Reads that only happen during STW, where no writes can happen during
      STW, do not need to be atomic.
    
    That said, the advice from the Go memory model stands: "Don't be
    [too] clever." The performance of the runtime matters, but its
    robustness matters more.
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 13.9K bytes
    - Viewed (0)
  7. src/runtime/mgclimit_test.go

    			t.Errorf("bucket overfilled should have overflow %d, found %d", expect, l.Overflow())
    		}
    		if t.Failed() {
    			t.FailNow()
    		}
    
    		// Make sure the STW adds to the bucket.
    		l.FinishGCTransition(advance(5 * time.Millisecond))
    		if l.Fill() != l.Capacity() {
    			t.Errorf("failed to maintain fill to capacity %d, got fill %d", l.Capacity(), l.Fill())
    		}
    		if !l.Limiting() {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 13 16:02:20 UTC 2022
    - 9K bytes
    - Viewed (0)
  8. src/runtime/proc.go

    //
    //	semacquire(&worldsema, 0)
    //	m.preemptoff = "reason"
    //	var stw worldStop
    //	systemstack(func() {
    //		stw = stopTheWorldWithSema(reason)
    //	})
    //
    // When finished, the caller must either call startTheWorld or undo
    // these three operations separately:
    //
    //	m.preemptoff = ""
    //	systemstack(func() {
    //		now = startTheWorldWithSema(stw)
    //	})
    //	semrelease(&worldsema)
    //
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 207.5K bytes
    - Viewed (0)
  9. src/runtime/extern.go

    		# MB globals scannable global size, or /gc/scan/globals:bytes
    		# P          number of processors used, or /sched/gomaxprocs:threads
    	The phases are stop-the-world (STW) sweep termination, concurrent
    	mark and scan, and STW mark termination. The CPU times
    	for mark/scan are broken down in to assist time (GC performed in
    	line with allocation), background GC time, and idle GC time.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:52:17 UTC 2024
    - 18.9K bytes
    - Viewed (0)
  10. src/cmd/vendor/golang.org/x/arch/ppc64/ppc64asm/gnu.go

    	case LWA, LWAX, LWAUX:
    		return true
    	case LD, LDU, LDX, LDUX:
    		return true
    	case LQ:
    		return true
    	case STB, STBU, STBX, STBUX:
    		return true
    	case STH, STHU, STHX, STHUX:
    		return true
    	case STW, STWU, STWX, STWUX:
    		return true
    	case STD, STDU, STDX, STDUX:
    		return true
    	case STQ:
    		return true
    	case LHBRX, LWBRX, STHBRX, STWBRX:
    		return true
    	case LBARX, LWARX, LHARX, LDARX:
    		return true
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 19 23:33:33 UTC 2023
    - 12.2K bytes
    - Viewed (0)
Back to top