At present, when one compiles Felix programs concurrently, it will work provided
(a) there's no need to rebuild the cache (b) everything that needs to be built by each compile is distinct It may also work if: (c) two processes rebuild something to the same thing For example if two compiles of two programs both include "fred", then if the fred.par2 pre-parsed file is the same it MIGHT work even if they parse simultaneously. It might also cause all hell to break loose if one process checks the header of the fred.par2 file that is partly created, finds it is OK, and loads it before the first process could complete writing it :) Unfortunately I don't think Unix can do a write to an inode first, the name the file at the end: at best write to a temporary, then do a rename (such renames are atomic). However there's worse: if one processes uses a different flxg compiler or whatever, it may delete the whole cache whilst the other process is using it. It's essential IMHO to make concurrent compilation safe: people use make -j, in fact, fbuild does concurrent compilation too. So whilst I'm looking at fixing the time stamp problem (switching to an older compiler doesn't delete the cache and it should) it would be cool if someone had some idea how to handle cached concurrent compilation. -- john skaller skal...@users.sourceforge.net ------------------------------------------------------------------------------ Virtualization & Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language