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

AARCH64: array_equals intrinsic doesn't use prefetch for large arrays

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 10
    • Fix Version/s: 11
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • Resolved In Build:
      b10
    • CPU:
      aarch64
    • OS:
      linux

      Description

      Current array_equals implementation doesn't used prefetch instruction(prfm) in case of large arrays. It can significantly improve performance in case of large and equal arrays(or arrays which are different at the end).

        Attachments

        1. ar_eq_T88.txt
          2 kB
        2. array_eq_1.0.diff
          3 kB
        3. array_eq_2.0.diff
          2 kB
        4. array_eq_2.1.diff
          3 kB
        5. array_eq_2.2.diff
          3 kB
        6. array_eq_2.3.diff
          4 kB
        7. array_eq_2.5.diff
          4 kB
        8. array_eq_2.6.1.diff
          7 kB
        9. array_eq_2.6.2.diff
          7 kB
        10. array_eq_2.6.diff
          7 kB
        11. array_eq_2.6d_newws.diff
          8 kB
        12. array_eq_2.6d.diff
          8 kB
        13. array_eq_2.7.diff
          7 kB
        14. array_eq_2.8.diff
          6 kB
        15. array_eq_2.9.1.diff
          6 kB
        16. array_eq_2.9.2.diff
          6 kB
        17. array_eq_2.9.diff
          6 kB
        18. array_eq_3.0.diff
          4 kB
        19. array_eq_4.0.diff
          5 kB
        20. array_eq_5.0.diff
          5 kB
        21. array_eq_6.0_mixed.diff
          5 kB
        22. array_eq_7.0.diff
          5 kB
        23. array_eq_8.0.diff
          4 kB
        24. array_eq_9.0.diff
          5 kB
        25. array_equals_results.txt
          1 kB
        26. array_equals.ods
          13 kB
        27. array_equals.ods
          13 kB
        28. ArrayEqualsBench.java
          2 kB
        29. ArrayEqualsBench.java
          2 kB
        30. test.java
          1 kB
        31. test.java
          1 kB
        32. test.java
          1 kB

          Issue Links

            Activity

              People

              • Assignee:
                dpochepk Dmitrij Pochepko
                Reporter:
                dpochepk Dmitrij Pochepko
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: