Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: st: Slowing process when running a program with multiple nested loops
From
David Kantor <[email protected]>
To
[email protected]
Subject
Re: st: Slowing process when running a program with multiple nested loops
Date
Mon, 14 Jan 2013 12:52:39 -0500
At 11:44 AM 1/14/2013, Ly Tran wrote:
I wrote a program, in which there are multiple nested loops (because
there are 7 parameters, each could receive one of 5-7 different
values).
The program runs really fast at first, but starts slowing down when
getting to around the 300th iteration. By 500th iteration, it slows
down significantly, and I could never wait until the whole thing ends
(the longest I have waited was 2 hours).
Does anybody know what could be the cause of this slowing down? "Set
memory" doesn't seem to help.
Any idea will be much appreciated.
thank you.
I think that most of would agree that we would need to see your code
to be able to say what the problem is.
Meanwhile, did you mean that the loops are nested to a depth of 7?
That's unusually deep.
Just generally speaking, with loops, there are often actions that are
placed inside that don't need to be there; they can be moved "up" or
"out" (sometimes requiring a bit of modification) so as to not be
done multiple times unnecessarily.
From what you describe, it seems that the work done in each
iteration is accumulating; each iteration does a bit more work than
the previous. There may be some unnecessary repetition as described
above. But it also seems that there is something that grows and gets
dragged along with each iteration -- again possibly unnecessarily.
This is analogous to a cumulative song, such as "The Twelve Days of
Christmas"; the 12th verse is much longer than the first.
On the other hand, does the true complexity of the task grow with
each iteration? Do you expect the 300th iteration to naturally be
more complex to perform than the first?
Show us your code if you want more help.
HTH
--David
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/faqs/resources/statalist-faq/
* http://www.ats.ucla.edu/stat/stata/