https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126376

ptomsich at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=122347

--- Comment #7 from ptomsich at gcc dot gnu.org ---
Recognition at any level converts one accumulation chain into one DOT_PROD
chain, but the performance on these kernels comes from running several
independent chains to hide the accumulator's loop-carried latency (a strict
DOT_PROD still reduces serially within one register).

The transformation that builds those chains is outer-loop unroll-and-jam of the
reduction (PR122347).  These two phases must compose: today the jammed loop
relies on the loop vectorizer, since the scalar-reduction loop is the only
shape where DOT_PROD is defined.

Reply via email to