Dear Roy,
On Tue, 26 Aug 2008, Roy Stogner wrote:
>> (In the current state, my code does not show any speedup on 20 processors
>> compared with 1 processor, because it spends apparently 95% of the time in
>> EquationSystems::reinit().)
>
> Could you insert some more fine-grained performance logs and verify
> that it's really project_vector causing most of the delay? That's an
> astonishingly lousy result.
Well, the '95%' were just the sensed percentage. To find out how much
it really is, I now used the PerfLog class. I have to admit that I
had not used that class ever before, so I am not completely sure
whether I understood the concept correctly.
I did the following: In EquationSystems::reinit(), I added some
PerfLog stuff (see attached modified copy of equation_systmes.C).
Also, in my main program, I added a PerfLog instance that measures the
complete computation time.
Attached are the results for 1 cpu and for 20 cpus. Note that
EquationSystems::reinit() has been called 6 times, hence there are 6
sections about this. (This is where I'm not sure whether I understood
the concept correctly.)
Note that the total time the computation spends in this function is
about 220 seconds for 1 cpu and about 230 seconds for 20 cpus, whereas
the overall total computation time is about 660 seconds for 1 cpu and
about 345 seconds for 20 cpus. Hence, the speedup is less than a
factor of 2. Also, for 20 cpus, 67% of the time is spent in
EquationSystmes::reinit().
I hope this information is sufficient for you. If not, please let me
know what else you need.
By the way: After the last refinement, the mesh consists of 98897
elements and 22675 nodes for 1 cpu, 98841 elements and 22662 nodes for
20 cpus.
Best Regards,
Tim
--
Dr. Tim Kroeger Phone +49-421-218-7710
tim.kroeger@..., tim.kroeger@... Fax +49-421-218-4236
MeVis Research GmbH, Universitaetsallee 29, 28359 Bremen, Germany
Amtsgericht Bremen HRB 16222
Geschaeftsfuehrer: Prof. Dr. H.-O. Peitgen |