[comp.lang.fortran] "Force-90" from Pacific Sierra????

mccalpin@perelandra.cms.udel.edu (John D. McCalpin) (04/16/91)

I am looking for some information on a Fortran parallelizer
called (something like) "Force-90" from Pacific Sierra.
Anybody out there have any info or experience?
--
John D. McCalpin			mccalpin@perelandra.cms.udel.edu
Assistant Professor			mccalpin@brahms.udel.edu
College of Marine Studies, U. Del.	J.MCCALPIN/OMNET

rchrd@well.sf.ca.us (Richard Friedman) (04/19/91)

mccalpin@perelandra.cms.udel.edu (John D. McCalpin) writes:

>I am looking for some information on a Fortran parallelizer
>called (something like) "Force-90" from Pacific Sierra.
>Anybody out there have any info or experience?
>--

Sure do.  Its called FORGE.   Its a layered product, so
if you get the parallelizer option for hypercubes it becomes
MIMDIZER (dont blame me for that name!  %-)

FORGE by itself will restructure FORTRAN77 codes for 
vectorization (e.g. CRAY).    It also has a very sophisticated
program browser that utilizes a global database.  The browser
provides a trace/query function that lets you find things in
the program that no context editor would find. E.g. show me
everwhere in the program that the variable IX is used as the
second subscript in arrays, even when IX is aliased thru
subprogram calls.

FORGE also has a runtime performance monitor that times subprograms
and do loops.  FORGE inserts calls to library routines around DO loops
and on subprogram entry exit.  The timing report summarizes time s
spent in each routine, each loop, and produces a dynamic call tree.
It is very detailed and allows the user to pinpoint exactly where
the program is spending its time.

With the parallelizer option FORGE/MIMDIZER will analyze loops for
SIMD and MIMD architectures (e.g. CRAY YMP or INTEL/NCUBE).  
Loops are analyzed globally (ie. a do loop and all the subroutines
it calls) and will insert directives for synchronization etc.
(e.g. CRAY Microtasking).  For MIMD it will two single dimension
data decomposition.  

The great thing about FORGE/MIMDizer is that it works on real
industrial strength programs, not toy demos.  It is basically
a workstation CASE tool written in C under UNIX.  It also has
an interface to SCCS and supports a "cpp-like" syntax for
conditional compilation directives.    It runs on a number of
platforms (SUN, IRIS, ULTRIX, CRAY UNICOS).  An NEC SX3 version is
under development  and discussions have begun re the Connection
Machine.  

It is certainly NOT public domain and costs a reasonable amount
considering the man-hours involved in its development.

For further information, you could contact me.  But only because
you asked.  This is not a commercial, so no flames please.
The last time I talked about what we were doing at PSR I got
my fingertips burned.
-- 
/\=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=/\
\/Richard Friedman (415)540-5216  |     rchrd@well.sf.ca.us  \/
/\Pacific-Sierra Rsrch (Berkeley) | or well!rchrd@apple.com  /\
\/=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\/

carroll@ssc-vax (Jeff Carroll) (04/20/91)

In article <24311@well.sf.ca.us> rchrd@well.sf.ca.us (Richard Friedman) writes:
>mccalpin@perelandra.cms.udel.edu (John D. McCalpin) writes:
>
>>I am looking for some information on a Fortran parallelizer
>>called (something like) "Force-90" from Pacific Sierra.
>>Anybody out there have any info or experience?
>>--
>
>Sure do.  Its called FORGE.   Its a layered product, so
>if you get the parallelizer option for hypercubes it becomes
>MIMDIZER (dont blame me for that name!  %-)

	If you're interested in a more detailed description of FORGE, check
out "A Guide to FORTRAN on Supercomputers" by Levesque and Williamson; should
be available at a good engineering library.

	It goes into a fair amount of detail about FORGE, since it is in large
part a thinly disguised application note from PSR (disguised enough that they
could charge money for it).

	disclaimer: I have not used FORGE, or "MIMDIZER"; from what I know
about the latter, it might save you a lot of time if you're developing
apps for an iPSC.

-- 
Jeff Carroll
carroll@ssc-vax.boeing.com

"Do you think I care? ... I have an infinite amount of money."	-Bill Gates