From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,2825742776461038 X-Google-Thread: 1147fc,2825742776461038 X-Google-Attributes: gid103376,gid1147fc,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news4.google.com!news.glorb.com!proxad.net!193.252.118.146.MISMATCH!news.wanadoo.fr!news.wanadoo.fr!not-for-mail Sender: obry@PASCAL Newsgroups: comp.lang.ada,comp.parallel.mpi Subject: Re: Ada-friendly MPI References: From: Pascal Obry Date: 24 Jun 2005 08:39:20 +0200 Message-ID: Organization: Home - http://www.obry.net User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii NNTP-Posting-Date: 24 Jun 2005 08:39:25 CEST NNTP-Posting-Host: 82.124.243.163 X-Trace: 1119595165 news.wanadoo.fr 25048 82.124.243.163:4653 X-Complaints-To: abuse@wanadoo.fr Xref: g2news1.google.com comp.lang.ada:11609 comp.parallel.mpi:994 Date: 2005-06-24T08:39:25+02:00 List-Id: jtg writes: > Errr... I should have said: job. Ok. > OK... If you write your program for MPI, you must run it with "mpirun" > command in mpi-enabled environment. If you write your program for PVM, > you must run it with "pvmrun" command in pvm-enabled environment. If you > use Ada Distributed Annex, there must be a command that dispatches tasks ^^^^^ job/partitions > and establishes communication between them, and the environment itself > must be configured for Ada Distribution Annex. No. Job dispatching on the different nodes are handled by GLADE (the implementation of Annex-E for GNAT). In fact, gnatdist (the equivalent to gnatmake for building distributed program) can generate a script or Ada main that will run/dispatch the different job/partitions on the different nodes. Then the boot-partition (a module in one or more partition) is used to initialized the distributed program. As you see MPI is far more low-level than the Ada solution. And the good news is that you can run your Ada program in a single computer (built with gnatmake) or in a distributed environment (built with gnatdist) without changing a single line of Ada code. Looks like magic, but it is not. It is in my opinion the right level of abstraction to concentrate on your problem instead of low-level stuff. > That's automatic only if you run it in the proper way and the environment is > configured. For instance if you run MPI task with "pvmrun" or vice versa > nothing will be done automatic. As I said GLADE take care of that. > How do you run Ada distributed programs? How are they dispatched to other > nodes (processors/computers)? Is there a command like "adarun" (analogous > to mpirun and pvmrun)? As described above this is done by a generated script (shell or Ada). > > Then use the same simple binding for Ada. If the binding is simple you > > should be able to create the Ada counterpart without problem. > I'm afraid I don't understand this. I mean you can always create a binding to the MPI API for Ada. > > You did not answer my question, which OS are you using ? > Now I use Windows/Debian on my personal computer, both with Ada installed. > Previously: > 15-node cluster - AIX > 128-node cluster - AFAIR TurboLinux (no Ada installed, I had to install gnat > in my home directory) > Now they have Debian on it. So I don't see a problem there. GNU/Linux Debian is well supported by GNAT. GNAT is maybe already on your system as it is installed along with the other GCC's compilers. Pascal. -- --|------------------------------------------------------ --| Pascal Obry Team-Ada Member --| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE --|------------------------------------------------------ --| http://www.obry.net --| "The best way to travel is by means of imagination" --| --| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595