RFR: 8008243: Zero: Implement fast bytecodes [v2]

Aleksey Shipilev shade at openjdk.java.net
Tue Oct 19 10:00:17 UTC 2021


> This work improves Zero performance considerably, without complicating the interpreter all that much. This work is based on much earlier patch by @rkennke, then edited by @jerboaa, and finally polished by me here :)
> 
> SPECjvm benchmarks improve across the board, with lowest improvement on `Derby` (+6%) and largest on `Compress` (+50%). Given that Zero is used to implement the JVM on emerging platforms that are still rather slow themselves, it makes sense to make Zero quantifiably faster. Even 10% improvement means more than 2 hours a day worth of CPU time.
> 
> Additional testing:
>  - [x] Linux x86_64 Zero fastdebug bootcycle-images
>  - [x] Linux x86_64 Zero fastdebug fuzzer tests (no failures = no new behaviors introduced)

Aleksey Shipilev has updated the pull request incrementally with three additional commits since the last revision:

 - Remove shadowing "obj" to fix JVMTI tests
 - Comment _fast_zputfield LSB
 - MAYBE_POST_FIELD_MODIFICATION should check _putstatic

-------------

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/1938/files
  - new: https://git.openjdk.java.net/jdk/pull/1938/files/4e485b09..da31a9d5

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=1938&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=1938&range=00-01

  Stats: 3 lines in 1 file changed: 0 ins; 1 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/1938.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/1938/head:pull/1938

PR: https://git.openjdk.java.net/jdk/pull/1938


More information about the hotspot-runtime-dev mailing list