On Tue, 7 Sep 2021 15:04:31 GMT, Maurizio Cimadamore <mcimadam...@openjdk.org> 
wrote:

>> This test runs a lot of configurations, and spends a lot of time serially. 
>> This is especially pronounced when run in prospective tier4 runs 
>> (JDK-8273314). There are reports of multi-hour runs (see JDK-8271613). We 
>> can parallelize the test configurations for this test to make it hurt less. 
>> Also, timeouts need to be increased for `TestUpcall` test configs, because 
>> some of them are very slow in fastdebug mode. 
>> 
>> Sample run:
>> 
>> 
>> $ time CONF=linux-x86_64-server-fastdebug make run-test 
>> TEST=java/foreign/TestMatrix.java | ts -s
>> 00:00:00 Building target 'run-test' in configuration 
>> 'linux-x86_64-server-fastdebug'
>> 00:00:03 Test selection 'java/foreign/TestMatrix.java', will run:
>> 00:00:03 * jtreg:test/jdk/java/foreign/TestMatrix.java
>> 00:00:03 
>> 00:00:03 Running test 'jtreg:test/jdk/java/foreign/TestMatrix.java'
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-TTFT
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-FFFF
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-FFTF
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-TTTT
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-FTTT
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-FFTT
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-FFFT
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-TTTF
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-FTTF
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-TFFT
>> 00:00:31 Passed: java/foreign/TestMatrix.java#UpcallHighArity-TFTF
>> 00:00:32 Passed: java/foreign/TestMatrix.java#UpcallHighArity-TFFF
>> 00:00:32 Passed: java/foreign/TestMatrix.java#UpcallHighArity-FTFF
>> 00:00:35 Passed: java/foreign/TestMatrix.java#UpcallHighArity-TFTT
>> 00:00:35 Passed: java/foreign/TestMatrix.java#UpcallHighArity-TTFF
>> 00:00:38 Passed: java/foreign/TestMatrix.java#UpcallHighArity-FTFT
>> 00:01:50 Passed: java/foreign/TestMatrix.java#Downcall-FF
>> 00:02:27 Passed: java/foreign/TestMatrix.java#Downcall-TF
>> 00:03:03 Passed: java/foreign/TestMatrix.java#Downcall-FT
>> 00:03:47 Passed: java/foreign/TestMatrix.java#Downcall-TT
>> 00:04:17 Passed: java/foreign/TestMatrix.java#Upcall-FTFF
>> 00:04:23 Passed: java/foreign/TestMatrix.java#Upcall-TFFF
>> 00:05:46 Passed: java/foreign/TestMatrix.java#Upcall-TTFF
>> 00:06:03 Passed: java/foreign/TestMatrix.java#Upcall-TFFT
>> 00:06:44 Passed: java/foreign/TestMatrix.java#Upcall-FTFT
>> 00:08:24 Passed: java/foreign/TestMatrix.java#Upcall-TFTF
>> 00:08:39 Passed: java/foreign/TestMatrix.java#Upcall-TTFT
>> 00:09:16 Passed: java/foreign/TestMatrix.java#Upcall-FTTF
>> 00:09:19 Passed: java/foreign/TestMatrix.java#Upcall-TFTT
>> 00:10:01 Passed: java/foreign/TestMatrix.java#Upcall-FTTT
>> 00:10:37 Passed: java/foreign/TestMatrix.java#Upcall-TTTF
>> 00:12:16 Passed: java/foreign/TestMatrix.java#Upcall-TTTT
>> 00:12:17 Test results: passed: 32
>> 00:12:21 
>> 00:12:21 ==============================
>> 00:12:21 Test summary
>> 00:12:21 ==============================
>> 00:12:21    TEST                                              TOTAL  PASS  
>> FAIL ERROR   
>> 00:12:21    jtreg:test/jdk/java/foreign/TestMatrix.java          32    32    
>>  0     0   
>> 00:12:21 ==============================
>> 
>> real 12m20.538s
>> user 131m54.043s
>> sys  0m59.944s
>> 
>> 
>> If we don't parallelize, then those 130 minutes are spent serially.
>
> test/jdk/java/foreign/TestMatrix.java line 7:
> 
>> 5:  * @build NativeTestHelper CallGeneratorHelper TestUpcallHighArity
>> 6:  *
>> 7:  * @run testng/othervm/native
> 
> can you please throw in a `/manual` in here as well - so that this test will 
> be disabled when running tests with jtreg `-a` option (which should be the 
> norm in headless mode).

I can, but it seems to me that `/manual` is for marking GUI tests that require 
user interaction. Let me see if there are keywords we can use. Something like 
"developer", so that you can pass `jtreg -k:developer` or 
`JTREG_KEYWORDS=developer make test ...` when you really want to run them. I'll 
take a closer look tomorrow.

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

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

Reply via email to