The data structures used to represent the multi-material state of a computational physics application can have a significant impact on its performance. We look at efficient data structures for applications where there may be many materials overall, but where most computational cells contain only one or a few of these materials. We develop simple performance models for selecting possible data structures and programming patterns. We verify the analytic performance models with a small test program of the representative cases. We discuss the impact of these techniques and analysis for multi-material physics applications, which are also applicable to a wide range of sparse computational data structures.
- Compact data structures
- Compressed sparse data structures
- Computational performance
- Data structures
- Multi-material physics