There are several options for a workstation setup (one node!) and I am not sure whether the linear solvers will scale to 2...4 GPUs including GPUs with 2 processors like the K80.
Do you have experience with the linear solvers on systems with e.g. 2x Tesla K80 or 3x FirePro W9100?
Best regards,
T.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
ViennaCL does not provide any automatic scaling to more than one GPU. Please consider PETSc for running across multiple GPUs, where ViennaCL is available as a GPU backend.
Best regards,
Karli
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
do you have a tutorial or example about how to use PETSc with ViennaCL to solve a linear system using multiple AMD GPUs instead of using multiple CPU processes?
I can only find installation instructions
T.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
No, there is no functionality in ViennaCL (natively) that allows you to use multiple GPUs for jointly solving a single large system. This is only possible through PETSc by using multiple CPU processes (via MPI).
Addendum:
If you want to use ViennaCL through PETSc, you provide the command line options -mat_type aijviennacl -vec_type viennacl
and specify a proper preconditioner. Typical choices (as of 04/2018) with a single MPI rank are:
-pc_type none to run without preconditioner
-pc_type saviennacl for smoothed aggregation multigrid
-pc_type chowiluviennacl for a parallel incomplete LU variant
With multiple MPI ranks you need to specify an outer block-Jacobi preconditioner, e.g. -pc_type bjacobi -sub_ksp_type preonly -sub_pc_type chowiluviennacl.
Last edit: Karl Rupp 2018-04-23
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello Karli,
a question about scaling.
There are several options for a workstation setup (one node!) and I am not sure whether the linear solvers will scale to 2...4 GPUs including GPUs with 2 processors like the K80.
Do you have experience with the linear solvers on systems with e.g. 2x Tesla K80 or 3x FirePro W9100?
Best regards,
T.
Hi,
ViennaCL does not provide any automatic scaling to more than one GPU. Please consider PETSc for running across multiple GPUs, where ViennaCL is available as a GPU backend.
Best regards,
Karli
Hi,
do you have a tutorial or example about how to use PETSc with ViennaCL to solve a linear system using multiple AMD GPUs instead of using multiple CPU processes?
I can only find installation instructions
T.
No, there is no functionality in ViennaCL (natively) that allows you to use multiple GPUs for jointly solving a single large system. This is only possible through PETSc by using multiple CPU processes (via MPI).
Addendum:
If you want to use ViennaCL through PETSc, you provide the command line options
-mat_type aijviennacl -vec_type viennacl
and specify a proper preconditioner. Typical choices (as of 04/2018) with a single MPI rank are:
-pc_type none
to run without preconditioner-pc_type saviennacl
for smoothed aggregation multigrid-pc_type chowiluviennacl
for a parallel incomplete LU variantWith multiple MPI ranks you need to specify an outer block-Jacobi preconditioner, e.g.
-pc_type bjacobi -sub_ksp_type preonly -sub_pc_type chowiluviennacl
.Last edit: Karl Rupp 2018-04-23