Challenges in Developing Distributed Memory Libaries
How to integrate software?
- Until recently no standards
- Many parallel languages
- Various parallel programming models
- Assumptions about the parallel environment
- granularity
- topology
- overlapping of communication/computation
- development tools
Where is the data
- Who owns it?
- Opt data distribution
Who determines data layout
- Determined by user?
- Determined by library developer?
- Allow dynamic data dist.
- Load balancing