adoptium / adoptium/bumblebench
DigestBench and HMACBench taking too long to run
- Dominant language
- Java
- Stars
- 27
- Forks
- 32
- PR merge metrics
- No merged PRs in 30d
Description
### Problem Description
DigestBench and HMACBench seem to take forever to run. Benchmarks in BumbleBench usually take less than 2 mins. I had to abort DigestBench run after it kept running for 1 hr 45 min, generating an extremely large output (> 3 GB) as shown in the screenshots below. HMACBench behaves in a similar way.
I'm trying to add these BumbleBench targets for testing at Adopt as part of AdoptOpenJDK/openjdk-tests#1379.


### Console Output
```
13:55:45 ===============================================
13:55:45 Running test bumbleBench-DigestBench_0 ...
13:55:45 ===============================================
13:55:45 bumbleBench-DigestBench_0 Start Time: Fri Nov 1 13:55:43 2019 Epoch Time (ms): 1572630943888
13:55:45 "/java/jenkins/workspace/Piyush-Grinder/openjdkbinary/j2sdk-image/bin/java" -Xshareclasses:destroyAll; "/java/jenkins/workspace/Piyush-Grinder/openjdkbinary/j2sdk-image/bin/java" -Xshareclasses:groupAccess,destroyAll; echo "cache cleanup done";
13:55:45 JVMSHRC005I No shared class caches available
13:55:45 JVMSHRC005I No shared class caches available
13:55:45 cache cleanup done
13:55:45 variation: NoOptions
13:55:45 JVM_OPTIONS: -Xcompressedrefs
13:55:45 { itercnt=1; \
13:55:45 mkdir -p "/java/jenkins/workspace/Piyush-Grinder/openjdk-tests/TestConfig/../TestConfig/test_output_15726308899881/bumbleBench-DigestBench_0"; \
13:55:45 cd "/java/jenkins/workspace/Piyush-Grinder/openjdk-tests/TestConfig/../TestConfig/test_output_15726308899881/bumbleBench-DigestBench_0"; \
13:55:45 "/java/jenkins/workspace/Piyush-Grinder/openjdkbinary/j2sdk-image/bin/java" -jar /java/jenkins/workspace/Piyush-Grinder/openjdk-tests/TestConfig/../../jvmtest/perf/bumbleBench/bumblebench/BumbleBench.jar DigestBench; \
13:55:45 if [ $? -eq 0 ] ; then echo ""; echo "bumbleBench-DigestBench_0""_PASSED"; echo ""; cd /java/jenkins/workspace/Piyush-Grinder/openjdk-tests/TestConfig/..; else echo ""; echo "bumbleBench-DigestBench_0""_FAILED"; echo ""; fi; } 2>&1 | tee -a "/java/jenkins/workspace/Piyush-Grinder/openjdk-tests/TestConfig/../TestConfig/test_output_15726308899881/TestTargetResult";
13:55:45 Using Provider SUN
13:55:45 Payload size: 4096 bytes
13:55:45
13:55:45 -= BumbleBench series 7 version 5.10 running DigestBench Fri Nov 01 13:55:44 EDT 2019 =-
13:55:45
13:55:45 Target Est Uncert% MaxPeak Peak Peak% %paused
13:55:45 0.0s: < 110 100 12.0 -inf -inf --
13:55:45 0.0s:
Contributor guide
Research direction
Start with the DigestBench and HMACBench targets in perf/bumbleBench/playlist.xml, then reproduce them through the Adopt Grinder using the BumbleBench.jar command shown in the console output. Compare their runtime and output with the reported behavior; done means both benchmarks complete without requiring an abort or generating several gigabytes of output.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100