X86: Support for VNNI byte Instruction VPDPBUSD

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Unresolved
    • Priority: P4
    • tbd
    • Affects Version/s: 13
    • Component/s: hotspot
    • Fix Understood
    • x86

      This also adds VNNI VPDPBUSD instruction support with autovectorization.
      It can vectorize this operation in the loop: out[i] += ((in1[4*i] * in2[4*i]) + (in1[4*i+1] * in2[4*i+1]) + (in1[4*i+2] * in2[4*i+2]) + (in1[4*i+3] * in2[4*i+3])); where in1[] and in2[] are byte arrays and out[] is an int array.
      This patch is useful for AI ML/DL applications such as convolution based Neural Nets.
      More information on VNNI can be found here: https://software.intel.com/sites/default/files/managed/c5/15/architecture-instruction-set-extensions-programming-reference.pdf

            Assignee:
            Jatin Bhateja
            Reporter:
            Vivek Deshpande (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: