 |
|
1280 |
Life_WT |
06/02/92 |
Life_WT 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 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. 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. |
| Author: | Steve Thorpe, International AVS Center |
| Version: | 1.000 |
| Language: | multiC |
| Path: | source/data_input/Life_WT/ |
|
|
|
Life_WT
Life_WT
Name
Life_WT
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
Extensive portions of this code were developed
by Wavetracer, Inc.
Source files
lifeWT.mc
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_WT 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 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.
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.
It is meant to be used with the Life AVS module, which is a standalone
implementation of Life_WT. 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
The 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
|
|