Allow running conformance tests in parallel (take 2)
dank at kegel.com
Mon Jul 21 10:32:07 CDT 2008
Running the conformance tests under valgrind takes
an awful long time. Running them in parallel works
well, if done with care.
There are two problems with running conformance
tests in parallel (e.g. via "make -j2 test"):
- the log files from the parallel jobs get mushed together
- tests that care about the state of the system
(e.g. what's on the screen) can conflict with each other
This patch addresses the first problem, and provides
the new function winetest_exclusive() to help address
the second problem.
Only one test that has called winetest_exclusive() runs
at a time; the others wait for the first test to exit
(gracefully or otherwise).
Tests that need to use the screen or some other
non-sharable resource should call winetest_exclusive().
The call needs to be placed with care in the case of
tests that exec themselves, but can usually just be
placed at the beginning of the START_TEST() block.
If Alexandre likes this, I will follow up with a minimalist
patch to add the most needed calls to winetest_exclusive().
Changes since last post:
- Avoid mixing log files from different jobs together
- Leave out calls to winetest_exclusive() for now
until Alexandre gives some feedback on the approach
for a sufficient but probably excessive example of how to use
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 2948 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20080721/29991a9e/attachment.patch
More information about the wine-patches