Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8215891

X86: Support for VNNI byte Instruction VPDPBUSD

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: In Progress
    • Priority: P4
    • Resolution: Unresolved
    • Affects Version/s: 13
    • Fix Version/s: tbd
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • Understanding:
      Fix Understood
    • CPU:
      x86

      Description

      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

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              jbhateja Jatin Bhateja
              Reporter:
              vdeshpande Vivek Deshpande
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated: