Subj : sweep
To : Jonathan De Boyne Pollard
From : Eddy Thilleman
Date : Fri Aug 03 2001 12:40 am
Hello Jonathan,
Tuesday 31 July 2001 08:06, Jonathan de Boyne Pollard wrote to Eddy Thilleman:
ET>> This new version of sweep has the same small delays as the
ET>> previous one, so these delays might be caused by calling the
ET>> command interpreter (CMD.EXE on my system).
JdBP> Possibly, although it's always better to profile the application to
JdBP> determine this. With a REXX script run within the command interpreter
JdBP> process, there isn't the overhead of invoking an additional instance
JdBP> of the command interpreter when one issues an external command, which
JdBP> may be why your REXX script is faster.
I don't have experience profiling with REXX. I'll look into this when I've
time.
JdBP> You can optimise things slightly, of course. Here are some
JdBP> suggestions:
JdBP> 1. Change your calls to DosFind{First,Next} to grab many directory
JdBP> entries in a single call, rather than just a single one (and then have
JdBP> an inner loop that iterates over the buffer entry by entry).
Do I need to change or replace the lines with DosFindFirst() and DosFindNext()
or should I just change the number of entries to find? Problably I need extra
calls to DosFindFirst() and DosFindNext() to iterate over entries in the
buffer? How would I make them work with the entries in the buffer?
JdBP> 2. Obtain the value of the COMSPEC environment variable just
JdBP> once.
I already do this in all the versions.
JdBP> 3. Use the API of my 32-bit CMD to invoke commands, rather than
JdBP> spawning an instance of the command interpreter as a child process.
JdBP> Commands would be interpreted by an interpreter for the CMD language
JdBP> running directly in your SWEEP process itself.
I need to study this, I haven't had the time yet (I don't know when I've the
time).
JdBP> If the problem is the process execution overhead for the command
JdBP> interpreter, as you suspect, the third suggestion may result in the
JdBP> largest speed increase.
I'll look into it.
Greetings -=Eddy=-
email:
[email protected]
[email protected]
... Beer Bong? Now that's a sport I can get into!
--- GoldED/2 3.0.1
* Origin: "DOS for dummies?" Isn't that what Windows is? (1:2320/38.3)