[Libre-soc-dev] SimdSignal scalar/vector switching and SimdShape.width
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Sun Oct 31 11:20:41 GMT 2021
https://libre-soc.org/3d_gpu/architecture/dynamic_simd/shape/
it just occurred to me: the addition of two SimdShapes with
both (/neither) fixed-and-elwid priority *might* actually work.
can someone please confirm (by helping illustrate with examples
in the wiki page)?
i *believed* that the addition of two (valid, prior) SimdShapes
with fixed width and specific elwidths would fail (over-run) if
both the fixed widths were added together and the specific
elwidths were also added together.
however, now i am not certain of that, and i believe it may
actually work... AS LONG AS the two SimdShapes are themselves
valid.
example - again, both of these are assumed valid:
* fixed width 8 elwid {1,1,1,1} partitions {1,2,4,8}
* fixed width 16 elwid {2,2,2,2} partitions {1,2,4,8}
result:
* fixed width 24 elwidths {3,3,3,3}
which given that 3x8=24 in the longest case is perfectly valid.
are there any counter-examples where this would fail?
* fixed width 16 elwid {16,1,1,1} partitions {1,2,4,8} - the max here
would be 16
* fixed width 16 elwid {1,1,1,2} partitions {1,2,4,8}
result:
* fixed width 32 elwidth {17,2,2,3} partitions {1,2,4,8} gives:
- 1x17
- 2x2
- 4x4
- 3x8
which maxes out at 24 which fits fine in the fixed width of 32.
can this be proven mathematically?
l.
More information about the Libre-soc-dev
mailing list