> > > And as a simple question, why are you using "make -j8"? Shouldn't this be part of the automake generated test code? > > > > The short answer is because I wanna use 8 cpus. There is no sensible way Automake can know how many cpus I wanna use. > > $ make check TESTSUITEFLAGS=-j8
I just searched the Automake.html manual and can't find TESTSUITEFLAGS. Where is this documented? Is this part of a new release? Unlike Serial Test Harness execution, the Parallel Test Harness does not output how it executes its tests. No way to find out what's under the hood without checking the code. I haven't looked at the Makefile source - mainly, I suspect, because I'm not a make guru (or even an aficionado). My guess was that The Makefile directed test execution was either: make -j# $(TESTS) or for I in $(TESTS); do make -j $i; done In either case, the selection of the number of processors to use was made by make and it is unnecessary and counter-productive to attempt specification by the user. If the "make -j8" or "make check TESTSUITEFLAGS=-j8" works then it seems to look like the Parallel Test Harness is really a Serial Test Harness with some extra capability. That is, if make doesn't select parallel execution internally (using something like my pseudo-code) then the default is serial execution. Then again, if either user option works, then the make internal logic must selectively attempt to execute k test cases using N processors and to 'do what?' if there are more tests than processors (k > N)? If I sound utterly baffled, it's because I am.