RFR: 8272970: Parallelize runtime/InvocationTests/ [v2]
Aleksey Shipilev
shade at openjdk.java.net
Wed Sep 1 08:01:20 UTC 2021
> Current runtime/InvocationTests/ are long and serial. They take about half an hour on a modern desktop, mostly using a single CPU. They can be parallelized better, at least on sub-test level. This would be important as [JDK-8272914](https://bugs.openjdk.java.net/browse/JDK-8272914) would start to run them in tier3.
>
> Sample run times:
>
>
> $ time CONF=linux-x86_64-server-fastdebug make run-test TEST=runtime/InvocationTests/
>
> # Before
> real 32m2.188s
> user 59m12.818s
> sys 0m45.612s
>
> # After
> real 17m21.110s
> user 63m31.851s
> sys 0m55.391s
>
>
> I think we can technically go even deeper, for example parallelising by `packageSet` in the generators themselves, but that would be much more intrusive. I think 17 minutes is already quite good, given other tests running in prospective `hotspot:tier3`.
Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
- Merge branch 'master' into JDK-8272970-parallel-invocation-tests
- Trim down redundant compile tags
- 8272970: Parallelize runtime/InvocationTests/
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/5250/files
- new: https://git.openjdk.java.net/jdk/pull/5250/files/3651efa3..f16b642d
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=5250&range=01
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=5250&range=00-01
Stats: 5444 lines in 222 files changed: 3928 ins; 730 del; 786 mod
Patch: https://git.openjdk.java.net/jdk/pull/5250.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/5250/head:pull/5250
PR: https://git.openjdk.java.net/jdk/pull/5250
More information about the hotspot-runtime-dev
mailing list