Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 13 for cputicks (0.13 sec)

  1. src/runtime/tracetime.go

    //
    // Hitting this target resolution is easy in the nanotime case: just pick a
    // division of 64. In the cputicks case it's a bit more complex.
    //
    // For x86, on a 3 GHz machine, we'd want to divide by 3*64 to hit our target.
    // To keep the division operation efficient, we round that up to 4*64, or 256.
    // Given what cputicks represents, we use this on all other platforms except
    // for PowerPC.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 21:17:41 UTC 2024
    - 3.3K bytes
    - Viewed (0)
  2. src/runtime/badlinkname.go

    // See go.dev/issue/67401.
    
    // Notable members of the hall of shame include:
    //   - github.com/dgraph-io/ristretto
    //   - github.com/outcaste-io/ristretto
    //   - github.com/clubpay/ronykit
    //go:linkname cputicks
    
    // Notable members of the hall of shame include:
    //   - gvisor.dev/gvisor (from assembly)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 661 bytes
    - Viewed (0)
  3. src/runtime/runtime.go

    //
    // Must not run concurrently with ticksPerSecond.
    func (t *ticksType) init() {
    	lock(&ticks.lock)
    	t.startTime = nanotime()
    	t.startTicks = cputicks()
    	unlock(&ticks.lock)
    }
    
    // minTimeForTicksPerSecond is the minimum elapsed time we require to consider our ticksPerSecond
    // measurement to be of decent enough quality for profiling.
    //
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 01:16:47 UTC 2024
    - 9.9K bytes
    - Viewed (0)
  4. src/runtime/sema.go

    	t0 := int64(0)
    	s.releasetime = 0
    	s.acquiretime = 0
    	s.ticket = 0
    	if profile&semaBlockProfile != 0 && blockprofilerate > 0 {
    		t0 = cputicks()
    		s.releasetime = -1
    	}
    	if profile&semaMutexProfile != 0 && mutexprofilerate > 0 {
    		if t0 == 0 {
    			t0 = cputicks()
    		}
    		s.acquiretime = t0
    	}
    	for {
    		lockWithRank(&root.lock, lockRankRoot)
    		// Add ourselves to nwait to disable "easy case" in semrelease.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 19K bytes
    - Viewed (0)
  5. src/runtime/chan.go

    	// chanrecv() and closechan() to update this thread's view of c.closed and full().
    	if !block && c.closed == 0 && full(c) {
    		return false
    	}
    
    	var t0 int64
    	if blockprofilerate > 0 {
    		t0 = cputicks()
    	}
    
    	lock(&c.lock)
    
    	if c.closed != 0 {
    		unlock(&c.lock)
    		panic(plainError("send on closed channel"))
    	}
    
    	if sg := c.recvq.dequeue(); sg != nil {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 01:16:50 UTC 2024
    - 25.9K bytes
    - Viewed (0)
  6. src/runtime/metrics_test.go

    					// The test imposes a delay with usleep, verified with calls to
    					// nanotime. Compare against the runtime/metrics package's view
    					// (based on nanotime) rather than runtime/pprof's view (based
    					// on cputicks).
    					t.Errorf("runtime/metrics reported less than the known minimum contention duration (%fs < %fs)", have, want)
    				}
    			})
    			if have, want := n, int64(len(mus)); have != want {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:52:17 UTC 2024
    - 45K bytes
    - Viewed (0)
  7. src/runtime/debuglog.go

    // call with "if dlogEnabled".
    //
    //go:nosplit
    //go:nowritebarrierrec
    func dlog() *dlogger {
    	if !dlogEnabled {
    		return nil
    	}
    
    	// Get the time.
    	tick, nano := uint64(cputicks()), uint64(nanotime())
    
    	// Try to get a cached logger.
    	l := getCachedDlogger()
    
    	// If we couldn't get a cached logger, try to get one from the
    	// global pool.
    	if l == nil {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 02 15:10:48 UTC 2024
    - 18.3K bytes
    - Viewed (0)
  8. src/runtime/mprof.go

    	}
    
    	if rate > 0 && int64(cheaprand())%rate == 0 {
    		lt.tickStart = cputicks()
    	}
    }
    
    func (lt *lockTimer) end() {
    	gp := getg()
    
    	if lt.timeStart != 0 {
    		nowTime := nanotime()
    		gp.m.mLockProfile.waitTime.Add((nowTime - lt.timeStart) * lt.timeRate)
    	}
    
    	if lt.tickStart != 0 {
    		nowTick := cputicks()
    		gp.m.mLockProfile.recordLock(nowTick-lt.tickStart, lt.lock)
    	}
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:57:37 UTC 2024
    - 53.3K bytes
    - Viewed (0)
  9. src/runtime/asm_loong64.s

    	BREAK
    	RET
    
    TEXT runtime·asminit(SB),NOSPLIT|NOFRAME,$0-0
    	RET
    
    TEXT runtime·mstart(SB),NOSPLIT|TOPFRAME,$0
    	JAL     runtime·mstart0(SB)
    	RET // not reached
    
    // func cputicks() int64
    TEXT runtime·cputicks(SB),NOSPLIT,$0-8
    	RDTIMED	R0, R4
    	MOVV	R4, ret+0(FP)
    	RET
    
    /*
     *  go-routine
     */
    
    // void gogo(Gobuf*)
    // restore state from Gobuf; longjmp
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon May 13 15:04:25 UTC 2024
    - 26.5K bytes
    - Viewed (0)
  10. src/runtime/asm_amd64.s

    	get_tls(CX)
    	MOVQ	g(CX), AX
    	CMPQ	(g_stack+stack_hi)(AX), SP
    	JHI	2(PC)
    	CALL	runtime·abort(SB)
    	CMPQ	SP, (g_stack+stack_lo)(AX)
    	JHI	2(PC)
    	CALL	runtime·abort(SB)
    	RET
    
    // func cputicks() int64
    TEXT runtime·cputicks(SB),NOSPLIT,$0-0
    	CMPB	internal∕cpu·X86+const_offsetX86HasRDTSCP(SB), $1
    	JNE	fences
    	// Instruction stream serializing RDTSCP is supported.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Sat May 11 20:38:24 UTC 2024
    - 60.4K bytes
    - Viewed (0)
Back to top