Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 18 for stkalloc (0.19 sec)

  1. src/runtime/stack.go

    		unlock(&stackpool[order].item.mu)
    	}
    }
    
    // stackalloc allocates an n byte stack.
    //
    // stackalloc must run on the system stack because it uses per-P
    // resources and must not split the stack.
    //
    //go:systemstack
    func stackalloc(n uint32) stack {
    	// Stackalloc must be called on scheduler stack, so that we
    	// never try to grow the stack during the code that stackalloc runs.
    	// Doing so would cause a deadlock (issue 1547).
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 22:31:00 UTC 2024
    - 41.1K bytes
    - Viewed (0)
  2. tensorflow/compiler/mlir/tensorflow/analysis/side_effect_analysis.cc

      bool IsAllocOnly() const { return IsAlloc() && effects_.count() == 1; }
      bool IsReadOnly() const { return IsRead() && effects_.count() == 1; }
      ResourceId GetResourceId() const { return resource_id_; }
    
      void SetAlloc() { effects_.set(kAlloc); }
      void SetFree() { effects_.set(kFree); }
      void SetRead() { effects_.set(kRead); }
      void SetWrite() { effects_.set(kWrite); }
      void SetUnknownEffect() { effects_.set(); }
    Registered: Sun Jun 16 05:45:23 UTC 2024
    - Last Modified: Wed May 15 09:04:13 UTC 2024
    - 41.2K bytes
    - Viewed (0)
  3. src/runtime/malloc.go

    	gcController.memoryLimit.Store(maxInt64)
    }
    
    // sysAlloc allocates heap arena space for at least n bytes. The
    // returned pointer is always heapArenaBytes-aligned and backed by
    // h.arenas metadata. The returned size is always a multiple of
    // heapArenaBytes. sysAlloc returns nil on failure.
    // There is no corresponding free function.
    //
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 59.6K bytes
    - Viewed (0)
  4. src/runtime/debuglog.go

    				l = l1
    				break
    			}
    		}
    	}
    
    	// If that failed, allocate a new logger.
    	if l == nil {
    		// Use sysAllocOS instead of sysAlloc because we want to interfere
    		// with the runtime as little as possible, and sysAlloc updates accounting.
    		l = (*dlogger)(sysAllocOS(unsafe.Sizeof(dlogger{})))
    		if l == nil {
    			throw("failed to allocate debug log")
    		}
    		l.w.r.data = &l.w.data
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 02 15:10:48 UTC 2024
    - 18.3K bytes
    - Viewed (0)
  5. src/runtime/traceregion.go

    		}
    
    		// Add the existing block to the full list.
    		block.next = a.full
    		a.full = block
    	}
    
    	// Allocate a new block.
    	block = (*traceRegionAllocBlock)(sysAlloc(unsafe.Sizeof(traceRegionAllocBlock{}), &memstats.other_sys))
    	if block == nil {
    		throw("traceRegion: out of memory")
    	}
    
    	// Allocate space for our current request, so we always make
    	// progress.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 08 17:47:01 UTC 2024
    - 3.2K bytes
    - Viewed (0)
  6. src/runtime/sys_openbsd2.go

    }
    func thrkill_trampoline()
    
    // mmap is used to do low-level memory allocation via mmap. Don't allow stack
    // splits, since this function (used by sysAlloc) is called in a lot of low-level
    // parts of the runtime and callers often assume it won't acquire any locks.
    //
    //go:nosplit
    func mmap(addr unsafe.Pointer, n uintptr, prot, flags, fd int32, off uint32) (unsafe.Pointer, int) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 8.7K bytes
    - Viewed (0)
  7. src/runtime/tracebuf.go

    			traceBufFlush(w.traceBuf, w.gen)
    		}
    		if trace.empty != nil {
    			w.traceBuf = trace.empty
    			trace.empty = w.traceBuf.link
    			unlock(&trace.lock)
    		} else {
    			unlock(&trace.lock)
    			w.traceBuf = (*traceBuf)(sysAlloc(unsafe.Sizeof(traceBuf{}), &memstats.other_sys))
    			if w.traceBuf == nil {
    				throw("trace: out of memory")
    			}
    		}
    	})
    	// Initialize the buffer.
    	ts := traceClockNow()
    	if ts <= w.traceBuf.lastTime {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 08 17:47:01 UTC 2024
    - 6.8K bytes
    - Viewed (0)
  8. src/runtime/HACKING.md

    There are three mechanisms for allocating unmanaged memory:
    
    * sysAlloc obtains memory directly from the OS. This comes in whole
      multiples of the system page size, but it can be freed with sysFree.
    
    * persistentalloc combines multiple smaller allocations into a single
      sysAlloc to avoid fragmentation. However, there is no way to free
      persistentalloced objects (hence the name).
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 13.9K bytes
    - Viewed (0)
  9. src/runtime/arena.go

    			hintList = &h.arenaHints
    		}
    		v, size := h.sysAlloc(userArenaChunkBytes, hintList, false)
    		if size%userArenaChunkBytes != 0 {
    			throw("sysAlloc size is not divisible by userArenaChunkBytes")
    		}
    		if size > userArenaChunkBytes {
    			// We got more than we asked for. This can happen if
    			// heapArenaSize > userArenaChunkSize, or if sysAlloc just returns
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 08 17:44:56 UTC 2024
    - 37.9K bytes
    - Viewed (0)
  10. src/runtime/mheap.go

    		n := 64 * 1024 / goarch.PtrSize
    		if n < cap(h.allspans)*3/2 {
    			n = cap(h.allspans) * 3 / 2
    		}
    		var new []*mspan
    		sp := (*slice)(unsafe.Pointer(&new))
    		sp.array = sysAlloc(uintptr(n)*goarch.PtrSize, &memstats.other_sys)
    		if sp.array == nil {
    			throw("runtime: cannot allocate memory")
    		}
    		sp.len = len(h.allspans)
    		sp.cap = n
    		if len(h.allspans) > 0 {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 22:31:00 UTC 2024
    - 78K bytes
    - Viewed (0)
Back to top