comp.lang.ada
 help / color / mirror / Atom feed
From: "David C. Hoos" <david.c.hoos.sr@ada95.com>
To: <comp.lang.ada@ada.eu.org>
Cc: <jay.fantini@dfrc.nasa.gov>, <tarjei.jensen@kvaerner.com>
Subject: Re: Parallel execution on SGI with GNAT
Date: Tue, 30 Oct 2001 06:31:21 -0600
Date: 2001-10-30T06:31:21-06:00	[thread overview]
Message-ID: <mailman.1004445031.15800.comp.lang.ada@ada.eu.org> (raw)
In-Reply-To: 3BDDD7EC.EC896675@dfrc.nasa.gov

The way this is done on SGI gnat-3.11p is described in the
package spec for System.Task_Info (file s-tasinf.ads).

The SGI information on sproc will also be helpful in providing
the background assumed by the writer of the comments in
the aforementioned source file.

It's been almost three years since I worked on SGI systems,
so the details are hazy in my mind, but I do remember that the
GNAT interface to the SGI sprocs was very nice and worked
well.

David C. Hoos

(256) 704-9623

----- Original Message -----
From: "Jay Fantini" <jay.fantini@dfrc.nasa.gov>
Newsgroups: comp.lang.ada
To: <comp.lang.ada@ada.eu.org>
Sent: Monday, October 29, 2001 4:27 PM
Subject: Parallel execution on SGI with GNAT


>


----------------------------------------------------------------------------
----


> Ada experts,
>
> Maybe you can help me: I am trying to get the following program to execute
> on a 6-CPU SGI ONYX-2 R12000 based system. The system is running IRIX 6.5
> and I am using GNAT Ada-95 version 3.11p for SGI. The program does compile
> and run but it only uses 1 CPU and I would like for it to execute on 3
CPUs.
> This program is a prototype for a much larger program.
>
> Do I need to set an environment variable or am I using the wrong Ada-95
> construct? Is there a PRAGMA I should use? Please post all answers to this
NG.
>
> TIA,
>
> -Jay
>
> -- ******************************************************************
>
> with text_io;
> with integer_text_io;
> with tems_floating_point_std;
> with floating_point_math_lib;
> with fp_display;
> with higher_functions;
>         with wexzal;
>
> use  tems_floating_point_std;
> use  floating_point_math_lib;
> use  higher_functions;
>         use  wexzal;
>
> procedure hog is
>
>         task type wzlsum(upper_limit: integer);
>         task body wzlsum is
>         x   :floating_point;
>         s   :floating_point;
>         begin
>         for i in 1..upper_limit loop
>           x:=floating_point(i);
>           s:=s+1.0/(x*wzl(x));
>           end loop;
>         text_io.put("Sum for n=");
>         integer_text_io.put(upper_limit);
>         text_io.put(" is S=");
>         fp_display.prt(s);
>         text_io.new_line;
>         end wzlsum;
>
>         cpu_hog_5    :wzlsum(5000000);  -- Do big calculation in parallel
>         cpu_hog_4    :wzlsum(4000000);
>         cpu_hog_3    :wzlsum(3000000);
>
> begin
>         text_io.put_line("Program HOG is done!");
> end hog;
>




  parent reply	other threads:[~2001-10-30 12:31 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-10-29 22:27 Parallel execution on SGI with GNAT Jay Fantini
2001-10-29 22:59 ` Marin David Condic
2001-10-30  5:08   ` brentcarnellis
2001-10-31  8:56     ` Peter Hermann
2001-10-30 11:30 ` Tarjei T. Jensen
2001-10-30 12:31 ` David C. Hoos [this message]
2001-10-30 14:11 ` Dale Pennington
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox