Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

FORTRAN M: A language for modular parallel programming

Technical Report ·
OSTI ID:7092511
 [1];  [2]
  1. Argonne National Lab., IL (United States). Mathematics and Computer Science Div.
  2. California Inst. of Tech., Pasadena, CA (United States). Dept. of Computer Science

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.

Research Organization:
Argonne National Lab., IL (United States). Mathematics and Computer Science Div.
Sponsoring Organization:
DOE; NSF; USDOE, Washington, DC (United States); National Science Foundation, Washington, DC (United States)
DOE Contract Number:
W-31109-ENG-38
OSTI ID:
7092511
Report Number(s):
ANL/MCS/PP-77544; ON: DE95002921; CNN: CCR-8809615
Country of Publication:
United States
Language:
English

Similar Records

FORTRAN Extensions for Modular Parallel Processing
Software · Fri Jan 12 00:00:00 EST 1996 · OSTI ID:1230339

Programming in Fortran M
Technical Report · Sun Aug 01 00:00:00 EDT 1993 · OSTI ID:10189341

Programming in Fortran M. Revision 1
Technical Report · Fri Oct 01 00:00:00 EDT 1993 · OSTI ID:10193751