ginkgo icon indicating copy to clipboard operation
ginkgo copied to clipboard

Building branch glu_experimental fails with default options

Open pelesh opened this issue 2 years ago • 2 comments

When I try to build branch glu_experimental on a Power9/V100 system with default options in CMake, I get following compilation error:

[ 43%] Building CXX object reference/test/factorization/CMakeFiles/reference_test_factorization_glu_kernels.dir/glu_kernels.cpp.o
/home/peles/src/ginkgo/ginkgo/reference/test/factorization/glu_kernels.cpp:84:27: error: 'factorization' in namespace 'gko' does not name a type
   84 |     using glu_type = gko::factorization::Glu<value_type, index_type>;
      |                           ^~~~~~~~~~~~~
/home/peles/src/ginkgo/ginkgo/reference/test/factorization/glu_kernels.cpp:202:47: error: template argument 1 is invalid
  202 |     std::unique_ptr<typename glu_type::Factory> glu_factory_skip;
      |                                               ^
/home/peles/src/ginkgo/ginkgo/reference/test/factorization/glu_kernels.cpp:202:47: error: template argument 2 is invalid
/home/peles/src/ginkgo/ginkgo/reference/test/factorization/glu_kernels.cpp:203:47: error: template argument 1 is invalid
  203 |     std::unique_ptr<typename glu_type::Factory> glu_factory_sort;
      |                                               ^
/home/peles/src/ginkgo/ginkgo/reference/test/factorization/glu_kernels.cpp:203:47: error: template argument 2 is invalid
/home/peles/src/ginkgo/ginkgo/reference/test/factorization/glu_kernels.cpp: In constructor '{anonymous}::Glu<ValueIndexType>::Glu()':
/home/peles/src/ginkgo/ginkgo/reference/test/factorization/glu_kernels.cpp:172:28: error: 'glu_type' has not been declared
  172 |           glu_factory_skip(glu_type::build().with_skip_sorting(true).on(exec)),
      |                            ^~~~~~~~
/home/peles/src/ginkgo/ginkgo/reference/test/factorization/glu_kernels.cpp:173:28: error: 'glu_type' has not been declared
  173 |           glu_factory_sort(glu_type::build().with_skip_sorting(false).on(exec))
      |                            ^~~~~~~~
make[2]: *** [reference/test/factorization/CMakeFiles/reference_test_factorization_glu_kernels.dir/build.make:76: reference/test/factorization/CMakeFiles/reference_test_factorization_glu_kernels.dir/glu_kernels.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:6091: reference/test/factorization/CMakeFiles/reference_test_factorization_glu_kernels.dir/all] Error 2
make: *** [Makefile:166: all] Error 2

In build directory, all I did was

cmake ../ginkgo
make

Disabling tests by passing option -DGINKGO_BUILD_TESTS=OFF appears to be a workaround for this problem.

pelesh avatar Feb 20 '23 21:02 pelesh

I will take a look, in the meantime please just build without the tests.

fritzgoebel avatar Feb 20 '23 22:02 fritzgoebel

need experimental:: before factorization, I think? gko::experimental::factorization::Glu<value_type, index_type>

yhmtsai avatar Feb 20 '23 22:02 yhmtsai