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

aarch64: optimise small array copy

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 9
    • Fix Version/s: 9
    • Component/s: hotspot
    • Labels:
      None
    • Subcomponent:
    • Resolved In Build:
      b112
    • CPU:
      aarch64
    • OS:
      linux

      Description

      Optimise the array copy code for aarch64.

      This improves the performance of copying small (0 to 80 bytes) arrays. The copy code is inlined (rather than calling out to copy_longs).

      The copy forwards and copy backwards case is identical because the small copy code reads all data into registers before writing any. Thankfully aarch64 has plenty of registers.

      The rationale for choosing 80 as the limit is that it provides a guarantee than copy_longs is always called with at least 64 bytes, even after worst case alignment fixup. This means the small case code in copy_longs can be deleted (I have put an assert in copy longs to check it is never called with < 64 bytes).

        Activity

        Hide
        hgupdate HG Updates added a comment -
        URL: http://hg.openjdk.java.net/jdk9/hs-comp/hotspot/rev/9e7c906e3208
        User: enevill
        Date: 2016-03-08 15:57:33 +0000
        Show
        hgupdate HG Updates added a comment - URL: http://hg.openjdk.java.net/jdk9/hs-comp/hotspot/rev/9e7c906e3208 User: enevill Date: 2016-03-08 15:57:33 +0000
        Hide
        hgupdate HG Updates added a comment -
        URL: http://hg.openjdk.java.net/jdk9/jdk9/hotspot/rev/9e7c906e3208
        User: lana
        Date: 2016-03-30 18:38:07 +0000
        Show
        hgupdate HG Updates added a comment - URL: http://hg.openjdk.java.net/jdk9/jdk9/hotspot/rev/9e7c906e3208 User: lana Date: 2016-03-30 18:38:07 +0000

          People

          • Assignee:
            enevill Ed Nevill
            Reporter:
            enevill Ed Nevill
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: