MP only does fine-grain parallelization; -bootstrap- and -simulate- do
not send iterations to separate processors, but each iteration to all
available processors. About a year ago, I wrote -bs2- and -sim2- to
split iterations across processors (just need to keep track of a list
of random numbers), but they did not perform all that well, so I never
released them. See the table on p.17 of
http://www.stata.com/statamp/report.pdf for some expected time
improvements for different commands.
Can you show us some timings for your system like this:
. drawnorm v1-v50, n(100000) clear
(obs 100000)
r; t=13.26 14:22:03
. qui reg v*
r; t=1.86 14:22:10
. set processor 1
number of available processor(s) changed from 2 to 1
r; t=0.00 14:22:15
. qui reg v*
r; t=3.07 14:22:23
. qui bs: reg v*
r; t=123.09 14:24:51
. set processor 2
number of available processor(s) changed from 1 to 2
r; t=0.00 14:25:04
. qui bs: reg v*
r; t=90.16 14:26:39
On Fri, Jul 31, 2009 at 11:54 AM, Cohen, Elan<[email protected]> wrote:
>> How do you know you are only using one processor?
>
> I'm watching the task manager as it's running. The Stata process only uses 13% of the CPU which is approximately 1/8 of 100%.
>
>> The bootstrap is not parallelized, but each iteration of the
>> estimation should be.
>
> This begs the question, are there some Stata commands that are built to run on multiple processors and some that aren't? I would've thought, if any, bootstrap would work on multiple processors.
>
>
>> On Fri, Jul 31, 2009 at 10:36 AM, Cohen, Elan<[email protected]> wrote:
>> > Hi all,
>> >
>> > I'm running StataMP on a Windows server running XP. The
>> computer has a Quad core processor, so 8 processors show up
>> in the task manager (due to hyper threading, I believe).
>> >
>> > However, if I run a command, such as bootstrap, Stata will
>> only allocate 1 processor to do the job.
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/