No real consolation or assistance, but I complained to our sysadmins
that we had very slow builds from slave nodes, but fast from the master.
I did some timing to give them something to aim for and it was
Master node : configure+generate = 25 seconds (file system is fibre
channel or something almost local)
Slave node : configure+generate = 210 seconds (file system is nfs)
A factor of almost 10! And really just because the dependency checking
and makefile writes etc use IO heavily...
Just so you know that it's not a samba specific problem, anything over
NFS is affected.
JB
Philip Lowman wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Is it mostly sending time in try-compile stuff? If so, it might be
possible that we could add some sort of cmake temp directory that was
not under the build tree to run try-compile tests in. Then that could
be set to a local disk. Once you have run CMake the first time, is it
fast after that?
That's the weird thing, it definitely is slow during the initial
compilation tests but after everything has been configured for the first
time even when I click "configure" again (and I have changed no cache
variables) it still takes about a minute to finish and about another 30
seconds after I click "generate" to write out the 25 or so VCproj files.
Does CMake do anything weird during it's configuration phase like write
out temporary files? Laying aside the initial compile checks which may
be occuring on the network drive (but if so, could be optimized to occur
in temp space on the C: ) what other file writes does CMake do prior to
generating the Makefiles?
Most files cmake writes out are copy if different. So, cmake writes a
file, then diff's it with the
file that was already there, and if they are different it gets rid of
the original and moves the new
file into place. This is to avoid too many reloads and other side
effects of changing all the
files all the time. It would be a lot of work, but I suppose you
might be able to build the whole
tree in some staging area, then move it later. But, that sounds very
difficult. It may just be
that running cmake over network drives on windows is slow....
-Bill
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake
--
John Biddiscombe, email:biddisco @ cscs.ch
http://www.cscs.ch/about/BJohn.php
CSCS, Swiss National Supercomputing Centre | Tel: +41 (91) 610.82.07
Via Cantonale, 6928 Manno, Switzerland | Fax: +41 (91) 610.82.82
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake