Dartmouth repository for parallel-I/O code examples. Example name: CFS3D Description: This is a synthetic code meant to be similar to a real application called ARC3D, in terms of its I/O. I/O usage: It outputs a 3-d matrix that is spread across distributed memories into a single sequential file, doing the I/O in parallel to a CFS file. All I/O is done at the end of the execution. The arrays are decomposed across processor memories, with some overlap. Overlapping parts of the file are just overwritten. One file contains three 3-d arrays called X, Y, and Z (in "Plot3d format"); another file contains a 4-d array called Q. Node 0 creates and preallocates the file. Each processor writes its own subcube of the matrix, but that subcube is not contiguous in the output, leading to an interleaved pattern. Platform: iPSC/x with CFS file system Language: FORTRAN (77?) Code author(s): Steve Ryan NASA Ames NAS facility ryan@nas.nasa.gov Contributed by: David Kotz, Dartmouth College, dfk@cs.dartmouth.edu Date contributed: 7/28/93 ------------------------------------------------------- Notes from the author: The files in this directory are to be released to anyone who wants to use them as examples for testing of CFS I/O, or to find improved ways of doing this type of I/O. The cfsioS2.f and cfsXS.f files contain the I/O parts of the code. They allow a grid which has been distributed across several nodes to be reassembled as a single array in a single file on CFS. This file could then be moved to other machines for use in visualization or other post-processing. Edit the file names which are hard-coded in the "open" statements of these routines. para.h contains some important parameters, and may be changed as necessary. go4 is a simple script to run the example on 4 processors. Any suggestions for improving the I/O performance are welcome. The calculations made in the code are not meant to be relevant. This is just a dummy code for trying out the message passing and disk I/O. Steve Ryan (415) 604-4496 ryan@nas.nasa.gov More information can be found in the following paper: @InProceedings{ryan:navier, author = {J. S. Ryan and S. K. Weeratunga}, title = {Parallel Computation of {3-D Navier-Stokes} Flowfields for Supersonic Vehicles}, booktitle = {31st Aerospace Sciences Meeting and Exhibit}, year = {1993}, address = {Reno, NV}, note = {AIAA Paper 93-0064.}, URL = {http://www.nas.nasa.gov/HPCC/Pubs/ryan/AIAA93-0064.html}, keyword = {parallel application, CFD, parallel I/O, pario bib}, comment = {This paper goes with the ryan:cfs code example.} }