When doing by-mode zipped_divide by using tiler, we can pass None as tiler entry, but what's the meaning?
Inspired by syntax of None in slicing OP, I expect that it means choose the mode as a single tile, no matter how big its size is. such as:
a = cute.make_layout((64,50),stride = (100,1))
assert cute.zipped_divide(a, (32,None)) == cute.zipped_divide(a, (32,50))
but in cute, we got an error:
((32,2),50):((100,3200),1)
loc("print(\22\\t\22, cute.zipped_divide(a, (32,None)))"("/root/test.py":10:16)): error: failed to perform a valid division of '!cute.layout<"(64,50):(100,1)">' by #cute.tile<"[32:1;_]">
and in pycute we got the same effect as tiler (32,1)
pycute.zipped_divide(a, (32,None)) == pycute.zipped_divide(a, (32,1)) # instead of pycute.zipped_divide(a, (32,50))
if None is the same as 1, why bother support it? makes me wonder if the order of modes in this lineshould be switched? after switch it I got expected result.
So, what I missed? how should I do when I want to skip tiling a mode (I mean choose whole mode as one big tile, not many size-1 tiles) ?
When doing by-mode zipped_divide by using tiler, we can pass None as tiler entry, but what's the meaning?
Inspired by syntax of
Nonein slicing OP, I expect that it means choose the mode as a single tile, no matter how big its size is. such as:but in cute, we got an error:
and in pycute we got the same effect as tiler (32,1)
if None is the same as 1, why bother support it? makes me wonder if the order of modes in this lineshould be switched? after switch it I got expected result.
So, what I missed? how should I do when I want to skip tiling a mode (I mean choose whole mode as one big tile, not many size-1 tiles) ?