Hello,
I am looking for a documentation describes the setup of the MAGMA linear solvers BiCG, BiCGSTAB, CG, IDR ... and the parameters for their configuration in my application code. I assume I am overlooking something but I couldn't find it.
Klaus
Where can I find the linear solver documentation?

 Posts: 90
 Joined: Tue Sep 02, 2014 5:44 pm
Re: Where can I find the linear solver documentation?
Dear Klaus,
I do admit that this is currently not very well documented. What we have is:
http://icl.cs.utk.edu/projectsfiles/mag ... dgesv.html
and then click on the specific solvers. For the description of the solver_par object, please look into sparse/include/magmasparse_types.h
If you have specific questions to a solver, I am happy to help. And I will try to improve the documentation in future.
Thanks, Hartwig
I do admit that this is currently not very well documented. What we have is:
http://icl.cs.utk.edu/projectsfiles/mag ... dgesv.html
and then click on the specific solvers. For the description of the solver_par object, please look into sparse/include/magmasparse_types.h
If you have specific questions to a solver, I am happy to help. And I will try to improve the documentation in future.
Thanks, Hartwig
Next steps
Dear Hartwig,
originally I worked with the following solvers which, in combination, were really fast to solve my physics problem but only 2D on the CPU, now I have to move to 3D with GPU support I think because the 3D case will have about 30.000.000 cells:
For symmetric matrices:
PCG + IC preconditioner
Startup:
1 matrixvector multiply
1 parallel reduction
Per iteration
1 matrixvector multiply
3 parallel reductions
+ preconditioner  applied 1x
All other CG solvers I tried (from other libraries) crashed at an early stage of the simulation!
I tried GMRES + AMG preconditioner too but it's about 6x slower and some GMRES implementations are "rough" so the end results (of the physics problem simulation) are not as good.
For asymmetric matrices BiCG (because it's faster) and BiCGStab (when BiCG was not stable and crashed):
PBiCG + Simplified Diagonalbased Incomplete LU preconditioner
Startup
2 matrixvector multiplies
1 parallel reduction
Per iteration
2 matrixvector multiplies
3 parallel reductions
+ preconditioner  applied 2x
PbiCGStab + Simplified Diagonalbased Incomplete LU preconditioner
Startup
1 matrixvector multiply
1 parallel reduction
Per iteration
2 matrixvector multiplies
6 parallel reductions
+ preconditioner  applied 2x
Three questions:
1: Which magma solvers would you see as replacements for the ones described above? (just as a starting point for tests)
2: What could be the benefit from iterative refinement?
3: How could I estimate the hardware power needed (CPUs + GPUs) to solve my 3D problem (assume double precision)?
Thank you for your help!
Klaus
originally I worked with the following solvers which, in combination, were really fast to solve my physics problem but only 2D on the CPU, now I have to move to 3D with GPU support I think because the 3D case will have about 30.000.000 cells:
For symmetric matrices:
PCG + IC preconditioner
Startup:
1 matrixvector multiply
1 parallel reduction
Per iteration
1 matrixvector multiply
3 parallel reductions
+ preconditioner  applied 1x
All other CG solvers I tried (from other libraries) crashed at an early stage of the simulation!
I tried GMRES + AMG preconditioner too but it's about 6x slower and some GMRES implementations are "rough" so the end results (of the physics problem simulation) are not as good.
For asymmetric matrices BiCG (because it's faster) and BiCGStab (when BiCG was not stable and crashed):
PBiCG + Simplified Diagonalbased Incomplete LU preconditioner
Startup
2 matrixvector multiplies
1 parallel reduction
Per iteration
2 matrixvector multiplies
3 parallel reductions
+ preconditioner  applied 2x
PbiCGStab + Simplified Diagonalbased Incomplete LU preconditioner
Startup
1 matrixvector multiply
1 parallel reduction
Per iteration
2 matrixvector multiplies
6 parallel reductions
+ preconditioner  applied 2x
Three questions:
1: Which magma solvers would you see as replacements for the ones described above? (just as a starting point for tests)
2: What could be the benefit from iterative refinement?
3: How could I estimate the hardware power needed (CPUs + GPUs) to solve my 3D problem (assume double precision)?
Thank you for your help!
Klaus

 Posts: 1
 Joined: Sat Nov 04, 2017 4:41 am
 Location: Russia
 Contact:
Where can I find the linear solver documentation
Dear All,
What are the subroutines that Im supposed to call to solve the linear ODEs in that form MXCXKX = F where none of the variables denoted as M, C, K and F are function of the time?
Does anybody can enlighten me on that?
Regards,
Комплексное продвижение сайтов!
Сбор различных баз для продвижения в интернете
Эффективно и недорого. Писать в ICQ 656310373
What are the subroutines that Im supposed to call to solve the linear ODEs in that form MXCXKX = F where none of the variables denoted as M, C, K and F are function of the time?
Does anybody can enlighten me on that?
Regards,
Комплексное продвижение сайтов!
Сбор различных баз для продвижения в интернете
Эффективно и недорого. Писать в ICQ 656310373
Re: Where can I find the linear solver documentation?
Are you using the MAGMA computational algebra system, http://magma.maths.usyd.edu.au/magma/ ?
If so, you're at the wrong site.
This forum is for the MAGMA linear algebra for GPUs library, http://icl.utk.edu/magma/
mark
If so, you're at the wrong site.
This forum is for the MAGMA linear algebra for GPUs library, http://icl.utk.edu/magma/
mark