Abstract
In this paper, we describe automated memory analysis, a technique to improve the memory efficiency of a sparse linear iterative solver. Our automated memory analysis uses a language processor to predict the data movement required for an iterative algorithm based upon a MATLAB implementation. We demonstrate how automated memory analysis is used to reduce the execution time of a component of a global parallel ocean model. In particular, code modifications identified or evaluated through automated memory analysis enable a significant reduction in execution time for the conjugate gradient solver on a small serial problem. Further, we achieve a 9% reduction in total execution time for the full model on 64 processors. The predictive capabilities of our automated memory analysis can be used to simplify the development of memory-efficient numerical algorithms or software.
| Original language | English |
|---|---|
| Pages (from-to) | 2210-2223 |
| Number of pages | 14 |
| Journal | SIAM Journal on Scientific Computing |
| Volume | 29 |
| Issue number | 5 |
| DOIs | |
| State | Published - 2007 |
Keywords
- Language processor
- Memory analysis
- Ocean modeling
- Sparse linear algebra