[Beowulf] programming guidence request
landman at scalableinformatics.com
Fri Jan 23 04:40:26 PST 2009
amjad ali wrote:
> Hello All,
> I am developing my parallel CFD code on a small cluster. My system has
> openmpi installed based on gfortran compiler. Please guide me
> (1) Which debugger would be easy and effective to use for above?
MPI generally makes debugging much harder. If you want to use a GUI
type debugger, I am only aware of commercial debuggers for MPI. This
includes the Allinea DDT tool, and the TotalView Debugger. You can
always use gdb, though this is (unfortunately) quite hard with MPI. The
ddd debugger interfaces with gdb, and while good itself as a GUI, it
doesn't quite understand MPI.
> (2) Which of the folliwng two ways of using arrays is more efficient
> with respect to memory and function-call-overheads or other overheads:
> (i) We should keep the arrays ALLOCATABLE and then
> before return from the subroutines, DEALLOCATE the local arrays.
> or (ii) We should keep the local arrays fix-sized as
> much as we can. (Will the memory is deallaocated/freed automatically
> on return from the subroutine?).
Hmm.... I would generally advise avoiding allocations
(creating/destroying arrays) in "inner loops" or more than a few times
on each thread/rank. Fixed sized arrays are ... dinosaurs from the
1960's fortran. You have allocatable, you can (and should) use it.
Just don't overuse it (by creating and destroying arrays millions of
times in inner loops)
> with best regards,
> Amjad Ali.
> Beowulf mailing list, Beowulf at beowulf.org
> To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo/beowulf
Joseph Landman, Ph.D
Founder and CEO
Scalable Informatics LLC,
email: landman at scalableinformatics.com
web : http://www.scalableinformatics.com
phone: +1 734 786 8423 x121
fax : +1 866 888 3112
cell : +1 734 612 4615
More information about the Beowulf