Lines Matching refs:size
38 def __init__(self, size):
39 self.size = size
42 buf = mmap.mmap(-1, size, tagname=name)
51 self._state = (self.size, self.name)
58 self.size, self.name = self._state = state
60 self.buffer = mmap.mmap(-1, self.size, tagname=self.name)
77 def __init__(self, size, fd=-1):
78 self.size = size
85 dir=self._choose_dir(size))
88 os.ftruncate(self.fd, size)
89 self.buffer = mmap.mmap(self.fd, self.size)
91 def _choose_dir(self, size):
96 if st.f_bavail * st.f_frsize >= size: # enough free space?
104 return rebuild_arena, (a.size, reduction.DupFd(a.fd))
106 def rebuild_arena(size, dupfd):
107 return Arena(size, dupfd.detach())
123 def __init__(self, size=mmap.PAGESIZE):
126 # Current arena allocation size
127 self._size = size
132 # - map each block size to a list of `(Arena, start, stop)` blocks
158 def _new_arena(self, size):
159 # Create a new arena with at least the given *size*
160 length = self._roundup(max(self._size, size), mmap.PAGESIZE)
162 # reach a large-ish size (roughly L3 cache-sized)
172 length = arena.size
188 def _malloc(self, size):
190 i = bisect.bisect_left(self._lengths, size)
192 return self._new_arena(size)
296 def malloc(self, size):
297 # return a block of right size (possibly rounded up)
298 if size < 0:
299 raise ValueError("Size {0:n} out of range".format(size))
300 if sys.maxsize <= size:
301 raise OverflowError("Size {0:n} too large".format(size))
308 size = self._roundup(max(size, 1), self._alignment)
309 (arena, start, stop) = self._malloc(size)
310 real_stop = start + size
326 def __init__(self, size):
327 if size < 0:
328 raise ValueError("Size {0:n} out of range".format(size))
329 if sys.maxsize <= size:
330 raise OverflowError("Size {0:n} too large".format(size))
331 block = BufferWrapper._heap.malloc(size)
332 self._state = (block, size)
336 (arena, start, stop), size = self._state
337 return memoryview(arena.buffer)[start:start+size]