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

X86: Support for VNNI byte Instruction VPDPBUSD

    Details

    • Type: Enhancement
    • Status: In Progress
    • Priority: P4
    • Resolution: Unresolved
    • Affects Version/s: 13
    • Fix Version/s: 14
    • 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:
                vdeshpande Vivek Deshpande
                Reporter:
                vdeshpande Vivek Deshpande
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: