>Hi,
>
>As anyone ever attempted to separate a process across multiple computers linked together through a network?
>
>I have a huge string comparison scheme that takes for ever to run (it has to do approx. fact(10000) comparisons). I cannot seem to find a way to make it go faster. The only thing I can do is buy a faster computer (!!!) or try to distribute the work accross the computers of our network.
>
>How can I do that from FoxPro? Do I have to write some code in C++?
>
>Thanks a lot in advance, Stephane.
In C++, you could spawn another thread to do some of the processing but that may not buy you anything in performance if you are using a single processor machine. Multiple threads will just be time sliced.
With VFP, you are limited to single threaded processing so the only way to get multiple threads involved is to create out-of-process COM servers (EXEs) and instantiate them. Once again, if you are using a single processor machine, you probably won't get the boost you are hoping for.
You could "spawn" multiple out-of-process COM servers on other machines using DCOM. Each server could do a subset of the processing based on a parameter you pass to the method. You would have to write the code to poll each server to see if it was done and then synchronize the end results.
Depending on where the data is stored, you may be able to get away with using only one DCOM server running on that machine. The data being compared would be local to the DCOM server and it would much faster.
Hope this gives you some ideas.
Larry Miller
MCSD
LWMiller3@verizon.netAccumulate learning by study, understand what you learn by questioning. -- Mingjiao