[M3commit] CVS Update: cm3
jay.krell at cornell.edu
Tue Feb 15 02:37:20 CET 2011
You might want to throttle the number of outstanding promises.
If only Posix provided good functions for e.g. finding the number of processors.
Or if NT or Posix made it easy to discover the number of spindles backing a path,
or to easily measure system utilization and backing down when it gets near 100%.
You know, an idle machine should be maxed out, but no more.
A machine with an interactive user should reserve CPU/memory/I/O for forground activity..
I don't I've ever seen this stuff done well though.
> Date: Tue, 15 Feb 2011 02:30:18 +0000
> To: m3commit at elegosoft.com
> From: mika at elego.de
> Subject: [M3commit] CVS Update: cm3
> CVSROOT: /usr/cvs
> Changes by: mika at birch. 11/02/15 02:30:18
> Modified files:
> cm3/m3-sys/m3quake/src/: QMachine.i3 QMachine.m3 m3makefile
> Added files:
> cm3/m3-sys/m3quake/src/: QPromise.i3 QPromise.m3
> Log message:
> Add support for the QMachine to be able to record (certain) Process.Creates as "promises" rather than executing them on the fly.
> The purpose of this modification is to allow parallelization of the CM3 compiler. The vast majority of the runtime of the compilation of a typical Modula-3 program is spent in the part "promised" here (when using the GCC backend).
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the M3commit