Need reviewers - jdk testing changes 6888927
Kelly O'Hair
Kelly.Ohair at Sun.COM
Wed Nov 4 17:26:24 UTC 2009
Alan Bateman wrote:
> Kelly O'Hair wrote:
>>
>> I need some formal reviewers on these jdk/test/Makefile changes.
>>
>> More polish and changes may need to be done later, but there
>> is value in what I have now, and I need lots of help to improve
>> things (and fix some of our testcases).
>>
>> Here is the bugid and webrev:
>>
>> 6888927: Fix jdk jtreg tests to indicate which ones need othervm,
>> allow for use of samevm option
>> http://cr.openjdk.java.net/~ohair/openjdk7/jdk7-build-samevm-6888927/webrev/
>>
>>
>> The goal was to see if we could easily run most of the regression
>> tests in the jdk/test directory, in minimum time, and without so
>> much noise (e.g. do not run unstable or problematic tests).
>> This could then be used as a benchmark to validate some quality measure
>> of the jdk7 that was built.
>>
>> The primary changes include:
>> * New jdk/test/Makefile targets: jdk_all jdk_lang jdk_util jdk_nio ...
>> * Addition of a jdk/test/ProblemList file to be used by
>> jdk/test/Makefile
>>
>> I tried to group all the tests (by directory names) into jdk_* sets, then
>> tried to balance them as to how long each set ran and if they could be
>> run
>> with the jtreg -samevm option. The balancing was tricky, and will need
>> more
>> polish, along with the virtual frame buffer idea. I also had to give up
>> on the awt, rmi, and swing tests until the Xvfb issues are figured out.
>>
>> I chose to not actually modify the tests themselves if they needed
>> fixing,
>> it was just too overwhelming. So developers and teams may want to
>> browse the
>> ProblemList for their favorite tests (which aren't my favorites ;^) and
>> consider what they might want to do.
>>
>> With this new jdk/test/Makefile, anybody can:
>>
>> cd jdk/test
>> gnumake [PRODUCT_HOME=${YOUR_JDK7_HOME}]
>> [JT_HOME=${YOUR_JTREG_HOME}] jdk_all
>>
>> And run about 3,000+ tests that SHOULD PASS in roughly 2 hours if your
>> machine isn't too slow and old. I was able to run it in 90 minutes on a
>> monster OpenSolaris AMD machine which had 16Gb RAM and 16 2.2Ghz cpus.
>>
>> Then I added "-j 4" to the gnumake command line and it only took 30mins!
>> So the various jdk_* make targets can be run in parallel.
>>
>> Please let me know what you think.
>>
>> -kto
>>
> This looks really good. I don't see any obvious issues in the Makefile
> and I grabbed the patch to try it and it worked great.
>
> My only concern is that ProblemList will require ongoing maintenance. I
> realize you don't want to get into changing tests and adding @ignore to
> unstable tests but I think you'll need to send a broadcast mail to make
> sure that folks know that their tests have problems in samevm mode, that
> they need to remove from ProblemList when fixing tests, maybe they need
> to add to ProblemList if changing/adding tests that take a long time, etc.
Yeah, but I didn't feel like I had many good solutions to this issue.
I'll maintain it to some degree, but I need the people that use this
makefile to help me out, and for everyone to start looking at why
their tests are even on this list.
>
> For the groupings, then the only odd one I noticed is that jdk_io
> includes the javax/imagio tests. It would best to separate these as they
> are very different areas.
It was more of a balancing act on the test groupings with regards to timings
etc., and imageio did have "io" in it's name :^), and most of them ran safely
in samevm mode. So we can move them to any other group that is run in samevm
mode. Do you have a better match than jdk_io?
-kto
>
> -Alan.
More information about the build-dev
mailing list