<HTML>
<div><style> BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; }</style>Correct me if I'm mistaken, but I believe one shortcoming with the Free Pascal Compiler, despite its speed, is that it isn't multi-threaded. It can't compile multiple independent units at once, and probably won't be able to for a while due to the use of global variables in the node builder. When it comes to building Lazarus and the compiler, this is gotten around by the Makefiles running several instances of the compiler on different processes, building independent packages that can later be linked.</div><div><br>
</div><div>I personally think that if the compiler can be made multi-threaded, then projects like OpenSceneGraph might see a huge improvement in compile times if the compiler is smart enough to identify units that don't depend on each other and compile them in parallel. I'm not sure how cross-compatible it can be made, since different platforms approach multithreading in different ways and I've noticed that the compiler tends to avoid using SysUtils and Classes and the like (so no using TThread for now).<br>
</div><div><br>
</div><div>This is getting a bit off-subject from fixing memory leaks though.</div><div><br>
</div><div>Gareth aka. Kit<br>
</div> <br>
<br>
<span style="font-weight: bold;">On Mon 30/07/18 19:39 , wkitty42@windstream.net sent:<br>
</span><blockquote style="BORDER-LEFT: #F5F5F5 2px solid; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px; PADDING-LEFT: 5px; PADDING-RIGHT: 0px">On 07/30/2018 11:35 AM, Michael Van Canneyt wrote:
<br>
<span style="color: rgb(102, 102, 102);">> On Mon, 30 Jul 2018, R0b0t1 wrote:
</span><br>
<span style="color: rgb(102, 102, 102);">>> It might be hard to imagine FPC taking that much longer than it does
</span><br>
<span style="color: rgb(102, 102, 102);">>> currently but ~30min for a large program is the standard with other
</span><br>
<span style="color: rgb(102, 102, 102);">>> compilers. I very much enjoy the speed of FPC. >
</span><br>
<span style="color: rgb(102, 102, 102);">> 30 *Minutes*, is this real ?
</span><br>
<br>
<br>
yep, for sufficiently large projects... when we compile OSG (OpenSceneGraph)
<br>
over here (using -j 8) it takes 20+ minutes for the first time or if we
<br>
reconfigure from debug to release mode or the other way around...
<br>
<br>
now, after the first time we compile it, the next times takes mere 10's of
<br>
seconds... then we move on to SceneGear and FlightGear when we're building that
<br>
whole project which uses OSG... 30-45 minutes for a complete, from the ground up
<br>
builds are not uncommon... it takes me back to the days of 30 years ago when
<br>
you'd start the (borland/turbo pascal) compile process and go get some c0ffee ;)
<br>
<br>
note: the machines these builds are being done on have 16Gig RAM, 1Tb HD, and a
<br>
4Ghz 8-core AMD FX-8350 CPU...
<br>
<br>
<br>
--
<br>
NOTE: No off-list assistance is given without prior approval.
<br>
*Please keep mailing list traffic on the list unless*
<br>
*a signed and pre-paid contract is in effect with us.*
<br>
_______________________________________________
<br>
fpc-devel maillist - <a href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a>
<br>
<a target="_blank" href="<a href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</a>"><span style="color: red;">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</span></a>
<br>
<br>
<br>
</blockquote></HTML>