Subject: Re: [Boost-bugs] [Boost C++ Libraries] #994: BJam output with parallel builds jumbled.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2007-05-30 09:03:42
#994: BJam output with parallel builds jumbled.
-------------------------------+--------------------------------------------
Reporter: grafik | Owner: grafik
Type: Bugs | Status: new
Milestone: Boost.Jam 3.1.15 | Component: bjam
Version: Boost.Jam 3.1.14 | Severity: Problem
Resolution: | Keywords:
-------------------------------+--------------------------------------------
Comment (by Rob.Lievaart_at_[hidden]):
Hi Noel,
Allways, nice to see I wasn't talking complete noncense. :-) And thanks
for
doing the work. My feeling is you shouldn't worry to much about the fork
and memory allocation. On Linux a fork does copy on write for all memory,
so in this case there should not be to much penalty. Other platforms may
have similar solutions.
As for the dynamic memory allocation, in general I expect very little
output from the (compile) commands, only in case of errors. And compared
to a fork/starting of a new process, compiling some C++ code, a few memory
allocations will probably not show
up at all when profiling.
I am just looking at execnt.c, and it is looking a lot more complex.
(NOTE: I currently have the boost 1.33.1 sources version on this machine,
so that may
be a bit outdated) A lot of win95/98 support that can probably be left
alone.
It uses spawn instead of fork/exec. To correctly handle stdout/stderr
this probably
has to be replaced with CreateProcess. CreateProcess works different so
this is not a trivial search/replace operation. Also reading output form
the Win32 handles works differently, so it will probably have quite a big
impact.
Hmm, execmac.c seems like a stub implementation, the function
does (allmost) nothing.
And execvms.c simply calls system, so no asynchronous support at all.
So the last two should be easy :-)
Kind Regards,
Rob Lievaart.
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/994#comment:4>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:55 UTC