MCPcopy
hub / github.com/tinygrad/tinygrad / vec

Method vec

tinygrad/dtype.py:76–79  ·  view source on GitHub ↗
(self, sz:int)

Source from the content-addressed store, hash-verified

74 def vcount(self): return self.count
75 @functools.cache # pylint: disable=method-cache-max-size-none
76 def vec(self, sz:int) -> DType:
77 assert self.count == 1, f"can't vectorize {self} with size {sz}"
78 if sz == 1 or self == dtypes.void: return self # void doesn't vectorize, and sz=1 is scalar
79 return DType(self.priority, self.bitsize*sz, f"{INVERSE_DTYPES_DICT[self.name]}{sz}", None, sz, self)
80 def ptr(self, size=-1, addrspace=AddrSpace.GLOBAL) -> PtrDType:
81 return PtrDType(self.priority, self.bitsize, self.name, self.fmt, self.count, None, self, addrspace, 1, size)
82 def scalar(self) -> DType: return self._scalar if self._scalar is not None else self

Callers 15

_render_definesMethod · 0.45
OpenCLRendererClass · 0.45
render_kernelMethod · 0.45
render_kernelMethod · 0.45
HIPRendererClass · 0.45
_render_kernelMethod · 0.45
AMDLLVMRendererClass · 0.45
__init__Method · 0.45
x86.pyFile · 0.45
shape_to_shape_argFunction · 0.45
vectorizeMethod · 0.45
ufixMethod · 0.45

Calls 1

DTypeClass · 0.85

Tested by 15

test_image_vecMethod · 0.36
test_vec_doubleMethod · 0.36
test_scalarMethod · 0.36
test_serializeMethod · 0.36
test_vec_ptr_szMethod · 0.36
test_vcountMethod · 0.36
get_load_image_uopFunction · 0.36
test_vec_bitcastMethod · 0.36