Add loop variant to certain benchmarks

XMLWordPrintable

    • Type: Enhancement
    • Resolution: Unresolved
    • Priority: P4
    • tbd
    • Affects Version/s: 24
    • Component/s: core-libs
    • None

      In order to compare specially coded methods compared to simple loops, we should add a looping base case. As we foresee better and better C2/Graal performance, the loop ones could hopefully improve over time. Also, some tests could be improved by adding more comments.


      test/micro/org/openjdk/bench/java/lang/foreign/LoopOverPollutedBuffer.java
      test/micro/org/openjdk/bench/java/lang/foreign/LoopOverPollutedSegments.java
      -> load / store / reduction --- why are they named "polluted"?

      test/micro/org/openjdk/bench/java/lang/foreign/LoopOverRandom.java
      -> some form of gather loop, but with an non-inlined call --- why?

      test/micro/org/openjdk/bench/java/lang/foreign/LoopOverSlice.java
      -> with some wrappers, do Element::get on each - what do you expect here, could that be optimized away completely (empty loop)?

      test/micro/org/openjdk/bench/java/lang/foreign/MemorySegmentZeroUnsafe.java
      -> fill (unsafe and MemorySegment) -- why not normal loop for auto-vectorizer?

      test/micro/org/openjdk/bench/java/lang/foreign/SegmentBulkCopy.java
      -> copy -- why no loop version?

      test/micro/org/openjdk/bench/java/lang/foreign/SegmentBulkFill.java
      - fill -- has loop version

      test/micro/org/openjdk/bench/java/lang/foreign/SegmentBulkHash.java
      - polynomial reduction -- has loop version

      test/micro/org/openjdk/bench/java/lang/foreign/SegmentBulkMismatch.java
      - mismatch (cmp 2 segments) -- why no loop version? - would be nice to test if-conversion

            Assignee:
            Per-Ake Minborg
            Reporter:
            Per-Ake Minborg
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: