NAME: Life AUTHOR INFO: Steve Thorpe Application Visualization System Specialist International AVS Center North Carolina Supercomputing Center 3021 Cornwallis Road, PO Box 12889 Research Triangle Park, NC 27709-2889 thorpe@ncsc.org SOURCE FILES: life.c TYPE: DATA INPUTS: Oneshot OUTPUTS: field 2D 2-space 4-vector byte (image) PARAMETERS: Name Type Default X Procs Integer 150 Y Procs Integer 150 Generations Integer 50 Display Every Integer 1 Go for it!! Oneshot DESCRIPTION: Life is an implementation of the "Life" problem. This is an algorithm where "neighbors", or cells, propagate or die, based on the proximity of other living neighbors. In this case, a living neighbor is represented by a simulation of a processor in the massively parrallel Wavetracer being "turned on". The thoughts behind the algorithm are: If there are too many neighbors, a cell will die due to overcrowding. If there are too few neighbors, a cell will die due to lack of resources. The user is able to control the number of "processors" in the X direction, the number of "processors" in the Y direction, the number of generations to compute, and the number of generations to compute between outputs of an image. A oneshot parameter, "Go for it!!" is supplied to begin the execution of the module. It is meant to be used with the Life_WT AVS module, which is a parrallel implementation of Life. As the number of processors increases, the performance of Life_WT greatly supercedes that of Life, due to the benefits of the Wavetracer's multiple processors operating in parrallel. The output from this coroutine module is an AVS image, which can be sent to the display_image module for viewing as the computation progresses. The user sees a visualization of the processors that are "alive" at that moment in the computation. LIMITATIONS: Life_WT is written in multiC, a fully compatible extension of the ANSI C programming language. It was developed using a Data Transport Computer from Wavetracer, Inc. You will need a multiC compiler and a Data Transport Computer to make use of that module. The Life_WT AVS module crashes the second time it is run... a quick work around until this bug is worked out is to "hammer it" after running it in a network, then drag it down into your network to run it again. SAMPLE NETWORK: oneshot | ----------------------------------- | | Life Life_WT | | display image display image