LLNL / hiop

HPC solver for nonlinear optimization problems
Other
209 stars 41 forks source link

Build with ginkgo back-end fails #586

Open barracuda156 opened 1 year ago

barracuda156 commented 1 year ago

Build with ginkgo back-end fails:

:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In function 'std::shared_ptr<gko::LinOpFactory> hiop::{anonymous}::setup_solver_factory(std::shared_ptr<const gko::Executor>, std::shared_ptr<gko::matrix::Csr<double, int> >)':
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:233:56: error: 'Mc64' is not a member of 'gko::reorder'
:info:build   233 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
:info:build       |                                                        ^~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:233:61: error: expected primary-expression before 'double'
:info:build   233 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
:info:build       |                                                             ^~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:233:69: error: expected primary-expression before 'int'
:info:build   233 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
:info:build       |                                                                     ^~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:235:65: error: 'Glu' is not a member of 'gko::experimental::factorization'
:info:build   235 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
:info:build       |                                                                 ^~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:235:69: error: expected primary-expression before 'double'
:info:build   235 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
:info:build       |                                                                     ^~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:235:77: error: expected primary-expression before 'int'
:info:build   235 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
:info:build       |                                                                             ^~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:253:53: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
:info:build   253 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
:info:build       |                                                     ^~~~~~~~~~~~~~~
:info:build In file included from /opt/local/include/ginkgo/ginkgo.hpp:123:
:info:build /opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
:info:build    72 | class ScaledReordered
:info:build       |       ^~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:253:69: error: expected primary-expression before '>' token
:info:build   253 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
:info:build       |                                                                     ^
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:253:72: error: '::build' has not been declared
:info:build   253 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
:info:build       |                                                                        ^~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In member function 'virtual int hiop::hiopLinSolverSymSparseGinkgo::matrixChanged()':
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:310:67: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
:info:build   310 |     auto sol = gko::as<gko::solver::Gmres<>>(gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
:info:build       |                                                                   ^~~~~~~~~~~~~~~
:info:build /opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
:info:build    72 | class ScaledReordered
:info:build       |       ^~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:310:67: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
:info:build   310 |     auto sol = gko::as<gko::solver::Gmres<>>(gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
:info:build       |                                                                   ^~~~~~~~~~~~~~~
:info:build /opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
:info:build    72 | class ScaledReordered
:info:build       |       ^~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:310:51: error: parse error in template argument list
:info:build   310 |     auto sol = gko::as<gko::solver::Gmres<>>(gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
:info:build       |                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:310:100: error: 'using element_type = class gko::LinOp' {aka 'class gko::LinOp'} has no member named 'get_solver'; did you mean 'get_size'?
:info:build   310 |     auto sol = gko::as<gko::solver::Gmres<>>(gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
:info:build       |                                                                                                    ^~~~~~~~~~
:info:build       |                                                                                                    get_size
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:314:56: error: 'gko::experimental::factorization::status' has not been declared
:info:build   314 |     return status == gko::experimental::factorization::status::success ? 0 : -1;
:info:build       |                                                        ^~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In member function 'virtual bool hiop::hiopLinSolverSymSparseGinkgo::solve(hiop::hiopVector&)':
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:330:40: warning: 'using Array = class gko::array<double>' is deprecated: please use array [-Wdeprecated-declarations]
:info:build   330 |     auto x_array = gko::Array<double>::view(exec_->get_master(), n_, dx);
:info:build       |                                        ^~~~
:info:build /opt/local/include/ginkgo/core/base/array.hpp:717:7: note: declared here
:info:build   717 | using Array [[deprecated("please use array")]] = array<ValueType>;
:info:build       |       ^~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:331:40: warning: 'using Array = class gko::array<double>' is deprecated: please use array [-Wdeprecated-declarations]
:info:build   331 |     auto b_array = gko::Array<double>::view(exec_, n_, drhs);
:info:build       |                                        ^~~~
:info:build /opt/local/include/ginkgo/core/base/array.hpp:717:7: note: declared here
:info:build   717 | using Array [[deprecated("please use array")]] = array<ValueType>;
:info:build       |       ^~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:332:93: warning: narrowing conversion of '((hiop::hiopLinSolverSymSparseGinkgo*)this)->hiop::hiopLinSolverSymSparseGinkgo::n_' from 'int' to 'gko::dim<2>::dimension_type' {aka 'long unsigned int'} [-Wnarrowing]
:info:build   332 |     auto dense_x_host = gko::matrix::Dense<double>::create(exec_->get_master(), gko::dim<2>{n_, 1}, gko::Array<double>::view(exec_->get_master(), n_, dx), 1);
:info:build       |                                                                                             ^~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:332:121: warning: 'using Array = class gko::array<double>' is deprecated: please use array [-Wdeprecated-declarations]
:info:build   332 |     auto dense_x_host = gko::matrix::Dense<double>::create(exec_->get_master(), gko::dim<2>{n_, 1}, gko::Array<double>::view(exec_->get_master(), n_, dx), 1);
:info:build       |                                                                                                                         ^~~~
:info:build /opt/local/include/ginkgo/core/base/array.hpp:717:7: note: declared here
:info:build   717 | using Array [[deprecated("please use array")]] = array<ValueType>;
:info:build       |       ^~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:333:73: warning: narrowing conversion of '((hiop::hiopLinSolverSymSparseGinkgo*)this)->hiop::hiopLinSolverSymSparseGinkgo::n_' from 'int' to 'gko::dim<2>::dimension_type' {aka 'long unsigned int'} [-Wnarrowing]
:info:build   333 |     auto dense_x= gko::matrix::Dense<double>::create(exec_, gko::dim<2>{n_, 1});
:info:build       |                                                                         ^~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:335:74: warning: narrowing conversion of '((hiop::hiopLinSolverSymSparseGinkgo*)this)->hiop::hiopLinSolverSymSparseGinkgo::n_' from 'int' to 'gko::dim<2>::dimension_type' {aka 'long unsigned int'} [-Wnarrowing]
:info:build   335 |     auto dense_b = gko::matrix::Dense<double>::create(exec_, gko::dim<2>{n_, 1}, b_array, 1);
:info:build       |                                                                          ^~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In member function 'virtual int hiop::hiopLinSolverNonSymSparseGinkgo::matrixChanged()':
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:396:67: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
:info:build   396 |     auto sol = gko::as<gko::solver::Gmres<>>(gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
:info:build       |                                                                   ^~~~~~~~~~~~~~~
:info:build /opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
:info:build    72 | class ScaledReordered
:info:build       |       ^~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:396:67: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
:info:build   396 |     auto sol = gko::as<gko::solver::Gmres<>>(gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
:info:build       |                                                                   ^~~~~~~~~~~~~~~
:info:build /opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
:info:build    72 | class ScaledReordered
:info:build       |       ^~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:396:51: error: parse error in template argument list
:info:build   396 |     auto sol = gko::as<gko::solver::Gmres<>>(gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
:info:build       |                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:396:100: error: 'using element_type = class gko::LinOp' {aka 'class gko::LinOp'} has no member named 'get_solver'; did you mean 'get_size'?
:info:build   396 |     auto sol = gko::as<gko::solver::Gmres<>>(gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
:info:build       |                                                                                                    ^~~~~~~~~~
:info:build       |                                                                                                    get_size
:info:build /opt/local/var/macports/build/_opt_PPCRosettaPorts_math_hiop/hiop/work/hiop-0.7.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:400:56: error: 'gko::experimental::factorization::status' has not been declared
:info:build   400 |     return status == gko::experimental::factorization::status::success ? 0 : -1;
:info:build       |                                                        ^~~~~~

hiop 0.7.1, ginkgo 1.5.0, gcc 12.2.0

pelesh commented 1 year ago

hiop 0.7.1, ginkgo 1.5.0, gcc 12.2.0

@barracuda156, you need to use Ginkgo from the head of glu_experimental branch. Direct solvers in Ginkgo are under heavy development right now and haven't been included in the official release yet.

barracuda156 commented 1 year ago

@pelesh Thank you, I will try now.

Without sparse backend btw all tests pass – and this is on 10.6.8 for PowerPC! https://github.com/macports/macports-ports/pull/17393

pelesh commented 1 year ago

@barracuda156, also see #585.

barracuda156 commented 1 year ago

@pelesh Sorry, I forgot to update. glu_experimental does not build, and upstream said it will be replaced with other branch: https://github.com/ginkgo-project/ginkgo/issues/1258

barracuda156 commented 9 months ago

Has this been addressed btw?

pelesh commented 9 months ago

Has this been addressed btw?

Almost there :). See #669. Direct solvers from glu_experimental branch have been released in Ginkgo 1.7.

barracuda156 commented 9 months ago

@pelesh As of now, fails for me with Ginkgo 1.7.0: https://github.com/LLNL/hiop/issues/674#issuecomment-1858427644

barracuda156 commented 9 months ago

hiop 1.0.1, ginkgo 1.7.0:

In file included from /opt/local/include/ginkgo/core/base/polymorphic_object.hpp:41,
                 from /opt/local/include/ginkgo/core/base/abstract_factory.hpp:40,
                 from /opt/local/include/ginkgo/ginkgo.hpp:40,
                 from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.hpp:55,
                 from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:55:
/opt/local/include/ginkgo/core/base/executor.hpp:1532:42: note: declared here
 1532 |     static std::shared_ptr<CudaExecutor> create(
      |                                          ^~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In lambda function:
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:220:49: warning: 'static std::shared_ptr<gko::HipExecutor> gko::HipExecutor::create(int, std::shared_ptr<gko::Executor>, bool, gko::allocation_mode, CUstream_st*)' is deprecated: device_reset is deprecated entirely, call hipDeviceReset directly. alloc_mode was replaced by the Allocator type hierarchy. [-Wdeprecated-declarations]
  220 |                  return gko::HipExecutor::create(0, gko::ReferenceExecutor::create(),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  221 |                                                  true);
      |                                                  ~~~~~
/opt/local/include/ginkgo/core/base/executor.hpp:1746:41: note: declared here
 1746 |     static std::shared_ptr<HipExecutor> create(
      |                                         ^~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In function 'std::shared_ptr<gko::LinOpFactory> hiop::{anonymous}::setup_solver_factory(std::shared_ptr<const gko::Executor>, std::shared_ptr<gko::matrix::Csr<double, int> >, gko::solver::trisolve_algorithm, unsigned int, double, unsigned int)':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:239:56: error: 'Mc64' is not a member of 'gko::reorder'; did you mean 'gko::experimental::reorder::Mc64'?
  239 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
      |                                                        ^~~~
In file included from /opt/local/include/ginkgo/ginkgo.hpp:140:
/opt/local/include/ginkgo/core/reorder/mc64.hpp:105:12: note: 'gko::experimental::reorder::Mc64' declared here
  105 | class Mc64 final
      |            ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:239:61: error: expected primary-expression before 'double'
  239 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
      |                                                             ^~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:239:69: error: expected primary-expression before 'int'
  239 |     auto preprocessing_fact = gko::share(gko::reorder::Mc64<double, int>::build().on(exec));
      |                                                                     ^~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:241:65: error: 'Glu' is not a member of 'gko::experimental::factorization'
  241 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
      |                                                                 ^~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:241:69: error: expected primary-expression before 'double'
  241 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
      |                                                                     ^~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:241:77: error: expected primary-expression before 'int'
  241 |     auto lu_fact = gko::share(gko::experimental::factorization::Glu<double, int>::build_reusable()
      |                                                                             ^~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:264:53: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  264 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
      |                                                     ^~~~~~~~~~~~~~~
In file included from /opt/local/include/ginkgo/ginkgo.hpp:144:
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:264:69: error: expected primary-expression before '>' token
  264 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
      |                                                                     ^
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:264:72: error: '::build' has not been declared
  264 |     auto reusable_factory = gko::share(gko::solver::ScaledReordered<>::build()
      |                                                                        ^~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp: In member function 'virtual int hiop::hiopLinSolverSymSparseGinkgo::matrixChanged()':
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:333:38: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  333 |                 gko::as<gko::solver::ScaledReordered<>>(
      |                                      ^~~~~~~~~~~~~~~
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:333:38: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  333 |                 gko::as<gko::solver::ScaledReordered<>>(
      |                                      ^~~~~~~~~~~~~~~
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:333:22: error: parse error in template argument list
  333 |                 gko::as<gko::solver::ScaledReordered<>>(
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:334:35: error: 'using std::__shared_ptr_access<gko::LinOp, __gnu_cxx::_S_atomic, false, false>::element_type = class gko::LinOp' {aka 'class gko::LinOp'} has no member named 'get_solver'; did you mean 'get_size'?
  334 |                     gko_solver_)->get_solver())->get_preconditioner()) :
      |                                   ^~~~~~~~~~
      |                                   get_size
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:336:34: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  336 |             gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
      |                                  ^~~~~~~~~~~~~~~
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:336:34: error: 'ScaledReordered' is not a member of 'gko::solver'; did you mean 'gko::experimental::reorder::ScaledReordered'?
  336 |             gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
      |                                  ^~~~~~~~~~~~~~~
/opt/local/include/ginkgo/core/reorder/scaled_reordered.hpp:72:7: note: 'gko::experimental::reorder::ScaledReordered' declared here
   72 | class ScaledReordered
      |       ^~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:336:18: error: parse error in template argument list
  336 |             gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:336:67: error: 'using std::__shared_ptr_access<gko::LinOp, __gnu_cxx::_S_atomic, false, false>::element_type = class gko::LinOp' {aka 'class gko::LinOp'} has no member named 'get_solver'; did you mean 'get_size'?
  336 |             gko::as<gko::solver::ScaledReordered<>>(gko_solver_)->get_solver());
      |                                                                   ^~~~~~~~~~
      |                                                                   get_size
/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_math_hiop/hiop/work/hiop-1.0.1/src/LinAlg/hiopLinSolverSparseGinkgo.cpp:339:56: error: 'gko::experimental::factorization::status' has not been declared
  339 |     return status == gko::experimental::factorization::status::success ? 0 : -1;
      |                                                        ^~~~~~
make[2]: *** [src/LinAlg/CMakeFiles/hiopLinAlg.dir/hiopLinSolverSparseGinkgo.cpp.o] Error 1
pelesh commented 9 months ago

@pelesh As of now, fails for me with Ginkgo 1.7.0: #674 (comment)

669 is still work in progress. We are not there yet :).

pelesh commented 9 months ago

CC @fritzgoebel