Fortran M is a small set of extensions to Fortran that supports a modular approach to the design of task parallel, message-passing programs. It has the following features.
# ====================================================================== # Fortran M, Version 1.0 Date: February 3, 1994 # ====================================================================== # # -------------------------- # Available software/reports: # -------------------------- file fm_v1.0.tgz for This is the Fortran M compiler , and user manual in tar compressed form (1545886 bytes). file fm_prog_v1.0.ps.gz for This is a compressed tar , file of the user manual "Programming in Fortran M" , in postscript format (127675 bytes). file fm_prog_v1.0.tgz for This is a compressed tar , file of the user manual "Programming in Fortran M" , in latex format (64447 bytes). lib reports for Subdirectory containing various Fortran M-related papers , and technical reports # ******************* # Questions/comments? Direct email to [email protected] # ******************* # Ian Foster # Robert Olson # Steven Tuecke # ====================================================================== # ****************** # WHAT IS Fortran M? # ****************** # Fortran M is a small set of extensions to Fortran 77 that supports # a modular approach to the design of message-passing programs. It has # the following features. # (1) Modularity. Programs are constructed by using explicitly-declared # communication channels to plug together program modules called # processes. A process can encapsulate common data, subprocesses, and # internal communication. # (2) Safety. Operations on channels are restricted so as to guarantee # deterministic execution, even in dynamic computations that create and # delete processes and channels. Channels are typed, so a compiler can # check for correct usage. # (3) Architecture Independence. The mapping of processes to processors # can be specified with respect to a virtual computer with size and # shape different from that of the target computer. Mapping is # specified by annotations that influence performance but not # correctness. # (4) Efficiency. Fortran M can be compiled efficiently for # uniprocessors, shared-memory computers, distributed-memory computers, # and networks of workstations. Because message passing is incorporated # into the language, a compiler can optimize communication as well as # computation. # Compatability libraries are available that allow the integration of # message-passing programs into an Fortran M framework. Send mail to # [email protected] for details. A compilation system that # integrates Fortran M and HPF is under development in collaboration # with Syracuse University. # For more information, see the user manual or use World Wide Web at # address # http://www.mcs.anl.gov/fortran-m # (WWW is a distributed multimedia system, accessible for example # via NCSA XMosaic.) The server currently provides FM tutorial slides, # the FM manual, application case studies, and programming examples. # Fortran M has been funded in part by NSF and DOE. # ======================================================================