[cfe-dev] Parallelizing clang tests
Gabor Greif
gabor at mac.com
Sat Mar 15 01:02:36 PDT 2008
Just for the record, I have checked this in as test/Makefile.parallel,
you need this patch to clang/Makefile to activate it:
Index: Makefile
===================================================================
--- Makefile (Revision 48341)
+++ Makefile (Arbeitskopie)
@@ -4,7 +4,7 @@
include $(LEVEL)/Makefile.common
test::
- cd test; $(MAKE)
+ cd test; $(MAKE) -f Makefile.parallel
clean::
@rm -rf build
Cheers,
Gabor
Am 14.03.2008 um 18:03 schrieb Chris Lattner:
>
> On Mar 1, 2008, at 10:54 AM, Gabor Greif wrote:
>
>> I have access to a quad Mac Pro now and have started building clang
>> in the llvm tree.
>>
>> I know that clang's test system is independent of dejagnu (which is a
>> good thing).
>> While TestRunner.sh is pretty basic it does a good job.
>>
>> But I expect that the clang tests will multiply soon. So I thought of
>> using extra cores to speed up tests.
>>
>> The idea is this:
>
> This is really cool Gabor. I'd really like to see this. One
> additional request: in terms of output, it is nice to be able to
> get output as tests are run. This lets you know if the test
> harness has hung and lets you see what progress it is making.
> However, most tests are successful, so seriously verbose output is
> bad (and potentially confusing when -j is used).
>
> How about this approach:
>
> 1. by default, a successful test, immediately after it is run,
> prints out a single "." with no newline.
> 2. by default, a failing test prints out "\n---- foo.c failed ---
> \n" or whatever.
> 3. When VERBOSE=1 is passed to make, it could print all the tests
> it is running like it does today: print the test name before it is
> executed, which is useful if the test hangs.
>
> This means that we'll get a nice "progress bar" out of dots in the
> common case when everything is passing, but that the order of the
> dots won't matter, and if individual dots get intermixed because of
> -j, it won't matter.
>
> What do you think?
>
> -Chris
More information about the cfe-dev
mailing list