[CMake] ctest multithreaded
Dr. Alex. GOUAILLARD
hanfei at caltech.edu
Tue Jul 24 16:27:42 EDT 2007
hi all,
Annoyed by the time needed by the ITK test suite to run, I made a little
test trying to use ctest in a multithreaded fashion (thanks to the -I
option). Attached is a little test that is yet neither automatic or
complete, but that already give nice results on windows. It could be
directly extended to deal with the memcheck command, which would be
great too (as it is even slower).
compile it, copy it in your build directory, and it should work fine.
It first fake running ctest on the first test, for you to read the total
number of tests. It is then prompting you for that number, and launch 8
threads (you can change that number in the code) each running
MaxNumberOfTest / 8 tests. It prints the logs in files named
ctest.log.<ThreadNumber>
pros:
-> On my 8 cores (2 4-cores) machine the gain is indeed a factor 8. 1012
ITK tests in 5 mn (yum!)
cons:
-> cmake is trying to write on some temp files, and all but the first
fail to do that.
-> I did not address merging and writing the resulting xml files for
dashboard submission. I need to figure how to redirect each individual
ctest xml output first, then parsing and merging should not really be an
issue.
questions:
-> how to use ITK framework to make it plateform independent?
-> how to get the number of cores automatically?
-> how to be compliant with the existing 1: writing temp files?
-> how to be compliant with the existant 2: how to redirect the xml output?
alex "hanfei"
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Solution1.zip
Type: application/x-zip-compressed
Size: 2579 bytes
Desc: not available
Url : http://public.kitware.com/pipermail/cmake/attachments/20070724/e596963d/Solution1-0001.bin
More information about the CMake
mailing list