<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-9"
http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
On 2010-09-10 07:16 PM, Daniel wrote:
<blockquote
cite="mid:AANLkTim3tSvBh-Fm_EYPrrMveeq=t8DKnw0oY+Vc63ib@mail.gmail.com"
type="cite">
<pre wrap="">This happens because the time it takes to SWITCH between one file to
another is significant. Ending one operation (a single file transfer)
and begining another takes a time slice. Summing up all these start
and finish ops takes a significant time slice.
</pre>
</blockquote>
I wonder if all this means compilation/build speeds cannot be
improved much by introducing faster hardware.<br>
<br>
To see what's happening in the bigger picture, I used 'Process
Monitor' [
<a class="moz-txt-link-freetext" href="http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx">http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx</a> ] and
filtered out those I believed to be irrelevant to FPC/Lazarus build
operation.<br>
<br>
Here are the results I see on Process Monitor (An 'event' is
Create/Open/Read/Write/Delete etc.).<br>
<br>
I am pasting summaries below hoping it helps someone identify a
bottleneck or something.<br>
<br>
<b>Count of occurences by EventClass:</b><br>
File System: 324,958<br>
Registry: 25,165<br>
Process: 4,577<br>
<br>
<b>Count of occurences by ProcessName: (Count: 12)</b><br>
ppcx64.exe: 275,003<br>
make.exe: 27,825<br>
rm.exe: 17,973<br>
fpc.exe: 9,110<br>
lazarus.exe: 6,742<br>
gorc.exe: 6,719<br>
conhost.exe: 5,034<br>
gdate.exe: 3,122<br>
pwd.exe: 1,483<br>
startlazarus.exe: 1,102<br>
csrss.exe: 946<br>
cmd.exe: 786<br>
<br>
<b>Count of occurences by Result:</b><br>
SUCCESS: 300,998<br>
NO SUCH FILE: 26,919<br>
NAME NOT FOUND: 15,446<br>
BUFFER OVERFLOW: 3,110<br>
REPARSE: 2,846<br>
FILE LOCKED WITH ONLY READERS: 2,469<br>
NO MORE FILES: 2,308<br>
NAME INVALID: 667<br>
PATH NOT FOUND: 538<br>
NO MORE ENTRIES: 327<br>
END OF FILE: 213<br>
INVALID PARAMETER: 32<br>
NOT REPARSE POINT: 10<br>
NAME COLLISION: 7<br>
IS DIRECTORY: 5<br>
<br>
</body>
</html>