[Libre-soc-dev] SVP64 parallel map-reduce idea

Luke Kenneth Casson Leighton lkcl at lkcl.net
Sat Jun 12 15:25:14 BST 2021


https://en.m.wikipedia.org/wiki/Prefix_sum

i was expecting the answer to be 307. i went, "thaaat's not a straight
aaaadd" :)

prefix sum. pascal triangle.  i love it.  the scalar version can be
mapreduce, parallel version prefix sum.

ok, so this is really nice.

next step, an algorithm is needed which can specify srcstep and
dststep,  fitting on top of a regfile rather than an abstract
temporary array.

i.e. the code should start:

int regfile[128]

def prefixsum(dstreg, src1reg, src2reg, VL, operation_to_call)
   int srcstep=0
   int dststep=0

and reference items in regfile by computing the indices (rather than
having a temporary array).

it would also i think be really valuable to have the output result
array *guaranteed* to comprise the intermediate cumulative sums as
well.

pascal triangle
1 2 3 4

the output array would contain
1 3 6 10

rather than
garbage garbage garbage 10

is that even practical without impacting the ability of high
performance designs?

l.



More information about the Libre-soc-dev mailing list