MAGMA use for steady CFD simualtions
Posted: Mon Feb 13, 2017 6:23 am
I am testing MAGMA sparse to solve linear systems arising from NS equations in a CFD steady simulation. Existing code uses Paralution ( cusparse ILU) and works fine. I am interested on having a faster ILU than what Paralution provides. I adapted the example_sparse.c to read an mtx file for the matrix and a txt file for the rhs. It works fine and I got performance results for ILU with cusparse and ILU with ISAI.
I have though observed that the repeated use of the ILU and the solver increases the memory consumption (attached file: memoryCheck.c).
I an other test I solve the same system twice but this time every run is between a magma_init() and magma_finalize() (attached file memoryCheck2.c).
My Matrix has 18400 nnz and the memory consumption status with nvidia-smi after each step is like that:
I have though observed that the repeated use of the ILU and the solver increases the memory consumption (attached file: memoryCheck.c).
I an other test I solve the same system twice but this time every run is between a magma_init() and magma_finalize() (attached file memoryCheck2.c).
My Matrix has 18400 nnz and the memory consumption status with nvidia-smi after each step is like that:
- ILU1
| 0 27593 C ./memoryCheck2 138MiB |
FGMRES1
| 0 27593 C ./memoryCheck2 138MiB |
After magma_finalize()
| 0 27593 C ./memoryCheck2 132MiB |
ILU2
| 0 27593 C ./memoryCheck2 148MiB |
FGMRES2
| 0 27593 C ./memoryCheck2 148MiB |
After magma_finalize()
| 0 27593 C ./memoryCheck2 142MiB |