RFR: 8345322: RISC-V: Add concurrent gtests for cmpxchg variants [v3]
Robbin Ehn
rehn at openjdk.org
Wed Dec 11 09:20:14 UTC 2024
> Hi, please consider these additional concurrent tests.
>
> (this will not go into 24)
>
> There are two concurrent counter versions:
> - Each thread is exclusively responsible for an certain increment steps
> - Each thread plainly tries to CAS increment by one
>
> I refactored the code, so these concurrent versions can reuse the generated CAS functions.
>
>
> [ RUN ] RiscV.cmpxchg_int64_concurrent_lr_sc_vm
> [ OK ] RiscV.cmpxchg_int64_concurrent_lr_sc_vm (24 ms)
> [ RUN ] RiscV.cmpxchg_int64_concurrent_maybe_zacas_vm
> [ OK ] RiscV.cmpxchg_int64_concurrent_maybe_zacas_vm (12 ms)
> [ RUN ] RiscV.cmpxchg_int32_concurrent_lr_sc_vm
> [ OK ] RiscV.cmpxchg_int32_concurrent_lr_sc_vm (14 ms)
> [ RUN ] RiscV.cmpxchg_int32_concurrent_maybe_zacas_vm
> [ OK ] RiscV.cmpxchg_int32_concurrent_maybe_zacas_vm (14 ms)
> [ RUN ] RiscV.cmpxchg_int16_concurrent_lr_sc_vm
> [ OK ] RiscV.cmpxchg_int16_concurrent_lr_sc_vm (15 ms)
> [ RUN ] RiscV.cmpxchg_int16_concurrent_maybe_zacas_vm
> [ OK ] RiscV.cmpxchg_int16_concurrent_maybe_zacas_vm (14 ms)
> [ RUN ] RiscV.cmpxchg_int8_concurrent_lr_sc_vm
> [ OK ] RiscV.cmpxchg_int8_concurrent_lr_sc_vm (14 ms)
> [ RUN ] RiscV.cmpxchg_int8_concurrent_maybe_zacas_vm
> [ OK ] RiscV.cmpxchg_int8_concurrent_maybe_zacas_vm (14 ms)
> [ RUN ] RiscV.weak_cmpxchg_int64_concurrent_lr_sc_vm
> [ OK ] RiscV.weak_cmpxchg_int64_concurrent_lr_sc_vm (15 ms)
> [ RUN ] RiscV.weak_cmpxchg_int64_concurrent_maybe_zacas_vm
> [ OK ] RiscV.weak_cmpxchg_int64_concurrent_maybe_zacas_vm (11 ms)
> [ RUN ] RiscV.weak_cmpxchg_int32_concurrent_lr_sc_vm
> [ OK ] RiscV.weak_cmpxchg_int32_concurrent_lr_sc_vm (15 ms)
> [ RUN ] RiscV.weak_cmpxchg_int32_concurrent_maybe_zacas_vm
> [ OK ] RiscV.weak_cmpxchg_int32_concurrent_maybe_zacas_vm (12 ms)
> [ RUN ] RiscV.weak_cmpxchg_int16_concurrent_lr_sc_vm
> [ OK ] RiscV.weak_cmpxchg_int16_concurrent_lr_sc_vm (13 ms)
> [ RUN ] RiscV.weak_cmpxchg_int16_concurrent_maybe_zacas_vm
> [ OK ] RiscV.weak_cmpxchg_int16_concurrent_maybe_zacas_vm (14 ms)
> [ RUN ] RiscV.weak_cmpxchg_int8_concurrent_lr_sc_vm
> [ OK ] RiscV.weak_cmpxchg_int8_concurrent_lr_sc_vm (13 ms)
> [ RUN ] RiscV.weak_cmpxchg_int8_concurrent_maybe_zacas_vm
> [ OK ] RiscV.weak_cmpxchg_int8_concurrent_maybe_zacas_vm (15 ms)
>
>
> Execute with +UseZacas, and without on BPI-F3.
>
> Thanks, Robbin
Robbin Ehn has updated the pull request incrementally with one additional commit since the last revision:
Reviews comments, added uint32
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/22574/files
- new: https://git.openjdk.org/jdk/pull/22574/files/5c7d9f93..a7a6c413
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=22574&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=22574&range=01-02
Stats: 58 lines in 1 file changed: 44 ins; 4 del; 10 mod
Patch: https://git.openjdk.org/jdk/pull/22574.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/22574/head:pull/22574
PR: https://git.openjdk.org/jdk/pull/22574
More information about the hotspot-dev
mailing list