Next: Data Structures
Up: Architecture
Previous: Architecture
The PPF will be designed using a minimum of five classes distinguished by responsibility.
- PPF_Interface Facade class whose responsibilities are as follows:
- knows which subsystems' classes are responsible for a request
- delegates client requests to appropriate subsystem objects
- PPF_Statistics Keeps track of statistics for each run including:
- number of particles sent from current node
- number of particles received from each neighbor
- average time for send and receives
- average time between send and receives
- time it took for the run from initialization to conclusion
- PPF_Timer Simple utility timer accurate to milliseconds
- PPF_Logic Handles all logic for particle passing, including:
- which domains to pass particles too
- which domains to receive particles from
- if not enough particles are in a list don't send it (unless the send is forced)
- if the current node is out of memory, write particles to disk
- PPF_Parallel_Wrapper Wrapper class to abstract all parallel calls to MPI
Figure 8.1 shows a general block diagram of class interactions in the PPF.
Figure: Flow of particle interactions in a package using PPF
Next: Data Structures
Up: Architecture
Previous: Architecture
Tue Apr 11 23:58:21 MST 2000