[Libre-soc-isa] [Bug 697] SVP64 Reduce Modes

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Fri Mar 25 14:26:16 GMT 2022


https://bugs.libre-soc.org/show_bug.cgi?id=697

--- Comment #28 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to Jacob Lifshay from comment #26)
> added python generator for tree-reduce with remap (passed in as a dict or
> something else indexable)
> 
> https://git.libre-soc.org/?p=openpower-isa.git;a=commitdiff;
> h=2fe0ce6285864927127d8226171c566886b87e89

ok good.  next step is to remove the MV, this is a hard requirement
not up for debate.  see multiple answers and comments above already
given and see comment #15 for the basic direction of the required
final algorithm.

i thought of a potential solution for the (single, only) case where
there is only one predicate bit in the source, and that is to output
a co-result (new predicate, likely have to be CRs, or r30)
containing an indicator of which elements are valid.

in the case where there was more than 1 src bit the co-result would
be 000000001 but in the 1-src-bit mask bit the co-result would be
an *exact* copy of that very same mask.

this solution would only work if the src vector was also the dest vector
which is not unreasonable and the final algorithm should take that into
account.  i have a suspicion it will be a hard requirement anyway: there
is no way that an alhorithm which requires a vector of temporary registers
will be acceptable or viable: all REMAP algorithms MUST be re-entrant
without requiring storage of inflight intermediary computations, only
the existing regfile can (theoretically) be used for that.

(In reply to Jacob Lifshay from comment #27)

> I got thoroughly distracted trying to make pretty ascii-art tree graphs for
> use by the above generator, WIP code here:
> https://git.libre-soc.org/?p=openpower-isa.git;a=commitdiff;
> h=f684acfa32ba1ef8c52abc5876da2b73696862dd

nice

> (lkcl, please don't remove all the type annotations or refactor all the code
> in text_tree_graph.py, it makes it waay easier for me to figure out, i'll
> remove them when I'm done...unless you want to finish getting it working? we
> should probably put this off for several months at least...)

no problem with that

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Libre-SOC-ISA mailing list