RFR: 8309697: [TESTBUG] Remove "@requires vm.flagless" from jtreg vectorization tests [v2]

Pengfei Li pli at openjdk.org
Wed Aug 9 09:36:04 UTC 2023


On Tue, 8 Aug 2023 17:44:46 GMT, Emanuel Peter <epeter at openjdk.org> wrote:

>>> A solution to this may be adding one more check of `CICompileOSR` is OFF if we still want to use interpreted execution for the reference result.
>> 
>> I would suggest to use `WB.setBooleanVMFlag("CICompileOSR", false);`. But it is debug flag which can be set only in debug VM.  There are may be other product flags you can temporary set to avoid compilation without locking.
>> 
>>> 
>>> Now the question is, which verification approach do you think is better? "C2 vs. interpreted" or "C2 vs. C1"?
>> 
>> We usually use Interpreter as gold standard.
>
> @vnkozlov @TobiHartmann we should re-run testing from our side.
> 
> @pfustc Why do you only test correctness (compare results) in some conditions? Is there not a risk that we miss doing it in some cases we should do it, just because we get the conditions slightly wrong?
> 
> Just FYI: we should integrate this whole correctness of results testing into the IR framework. I filed [JDK-8310533](https://bugs.openjdk.org/browse/JDK-8310533). That would make it easier to use for new tests. It could also be used for any test, not just the ones located in `test/hotspot/jtreg/compiler/vectorization`.

Hi @eme64 ,

Thanks for looking at this.

> @pfustc Why do you only test correctness (compare results) in some conditions? Is there not a risk that we miss doing it in some cases we should do it, just because we get the conditions slightly wrong?

Yes, you are right! These conditions are added before to avoid jtreg hanging when compilation is locked. But now I can remove them because the lock is removed. In my latest commit, I have removed the conditions and some useless imports.

> Just FYI: we should integrate this whole correctness of results testing into the IR framework. I filed [JDK-8310533](https://bugs.openjdk.org/browse/JDK-8310533). That would make it easier to use for new tests. It could also be used for any test, not just the ones located in test/hotspot/jtreg/compiler/vectorization.

I have noticed this JBS before. The reason I didn't added correctness check into the IR framework is that I implemented this kind of check before the IR framework exists. (We have used it internally for a few years.) But anyway, it is a good proposal and I'm willing to help if needed.

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

PR Comment: https://git.openjdk.org/jdk/pull/15011#issuecomment-1670964757


More information about the hotspot-compiler-dev mailing list