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

Reply via email to