Closed klausbu closed 3 years ago
I think you are missing template parameter for backend in amgcl::runtime::solver::wrapper
.
The following code (simplifed version of examples/mpi/mpi_amg.cpp) does compile for me: https://gist.github.com/ddemidov/0629e36b9c9f3a056c063a1d3e15dd93.
Can you please check if that works for you as well? If that it does, please post a minimal reproducible example that does not work for you. Also note that at this time the MPI interface does not support mixed precision.
Hello Denis,
I tried to update an interface with the latest version of AMGCL to work with mixed precision etc. all MPI but I get a few compile Errors even before making changes:
This is the code section in questioon which worked:
These are the compile errors: Fehler means error
myNewAMGCLSOLVER.C:325:9: Fehler: Typ/Wert des Arguments 2 passt nicht in Template-Parameterliste für »template<class Precond, class IterativeSolver> class amgcl::mpi::make_solver« 325 | > Solver; | ^
"the type/value of argument 2 doesn't fit the template parameter list...
myNewAMGCLSOLVER.C:325:9: Anmerkung: einen Typ erwartet, »wrapper« erhalten
myNewAMGCLSOLVER.C:350:74: Fehler: Ausdrucksliste als zusammengesetzten Ausdruck in Initialisierung behandelt [-fpermissive] 350 | Solver solve(MPI_COMMWORLD, std::tie(chunk, ptr, col, val), prm); | ^
myNewAMGCLSOLVER.C:350:74: Fehler: »boost::property_tree::ptree« {aka »boost::property_tree::basic_ptree<std::__cxx11::basic_string, std::__cxx11::basic_string >«} kann nicht nach »Solver« {aka »int«} in Initialisierung umgewandelt werden
myNewAMGCLSOLVER.C:353:53: Fehler: »solve« kann nicht als Funktion verwendet werden 353 | std::tie(iters, resid) = solve(rhs, solution);
Is this caused by changes in the library?