NVIDIA / AMGX

Distributed multigrid linear solver library on GPU
495 stars 143 forks source link

Build error: undefined identifiers in aggregation_amg_level.cu #212

Open ma-sadeghi opened 2 years ago

ma-sadeghi commented 2 years ago

I just tried building AMGX from source, and here's the error message I got:

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(1983): error: identifier "profileSubphaseFindAggregates" is undefined

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(2003): error: identifier "profileSubphaseFindAggregates" is undefined

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(2327): error: identifier "profileSubphaseComputeCoarseA" is undefined

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(2603): error: identifier "profileSubphaseComputeRestriction" is undefined

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(2609): error: identifier "profileSubphaseComputeCoarseA" is undefined

5 errors detected in the compilation of "/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu".
mattmartineau commented 2 years ago

Could you share build steps?

ma-sadeghi commented 2 years ago

Thank you for your reply!

Sure, just one thing though: the error I reported was using an old CUDA version (11.4 IIRC). Here's the new error I'm getting using CUDA 11.6:

nvcc version

(dev) amin@pmeal-hpc:~/Code/AMGX/build$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_Mar__8_18:18:20_PST_2022
Cuda compilation tools, release 11.6, V11.6.124
Build cuda_11.6.r11.6/compiler.31057947_0

Create build folder and perform prebuild step (cmake)

(dev) amin@pmeal-hpc:~/Code/AMGX$ rm -rf build/
(dev) amin@pmeal-hpc:~/Code/AMGX$ mkdir build
(dev) amin@pmeal-hpc:~/Code/AMGX$ cd build/
(dev) amin@pmeal-hpc:~/Code/AMGX/build$ cmake ../
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- The CUDA compiler identification is NVIDIA 11.6.124
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Check for working CUDA compiler: /usr/local/cuda-11.6/bin/nvcc - skipped
-- Detecting CUDA compile features
-- Detecting CUDA compile features - done
-- Found MPI_C: /usr/local/lib/libmpich.a (found version "2.2") 
-- Found MPI_CXX: /usr/local/lib/libmpichcxx.a (found version "2.2") 
-- Found MPI: TRUE (found version "2.2")  
-- Found CUDAToolkit: /usr/local/cuda-11.6/include (found suitable version "11.6.124", minimum required is "10.0") 
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE  
-- Found OpenMP_C: -fopenmp (found version "4.5") 
-- Found OpenMP_CXX: -fopenmp (found version "4.5") 
-- Found OpenMP: TRUE (found version "4.5")  
This is a MPI build:TRUE
-- Configuring done
-- Generating done
-- Build files have been written to: /home/amin/Code/AMGX/build

Build using 8 threads

(dev) amin@pmeal-hpc:~/Code/AMGX/build$ make -j8 all
[  0%] Building CUDA object src/CMakeFiles/amgx_tests_libs.dir/test_utils.cu.o
[  1%] Building CUDA object src/CMakeFiles/amgx_tests_libs.dir/testframework.cu.o
[  1%] Building CUDA object src/CMakeFiles/amgx_tests_libs.dir/unit_test.cu.o
[  1%] Built target copy_configs_core
[  1%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/aggregation_amg_level.cu.o
[  2%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/coarseAgenerators/thrust_coarse_A_generator.cu.o
[  2%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/coarseAgenerators/hybrid_coarse_A_generator.cu.o
[  3%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/coarseAgenerators/coarse_A_generator.cu.o
[  3%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/coarseAgenerators/low_deg_coarse_A_generator.cu.o
[  3%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/adaptive.cu.o
[  4%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/agg_selector.cu.o
[  4%] Built target amgx_tests_libs
[  4%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/dummy.cu.o
[  4%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/geo_selector.cu.o
[  5%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/multi_pairwise.cu.o
[  5%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/parallel_greedy_selector.cu.o
[  6%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/selector_kernels.cu.o
[  6%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/serial_greedy.cu.o
[  6%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/size2_selector.cu.o
[  7%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/size4_selector.cu.o
[  7%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/size8_selector.cu.o
[  8%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg.cu.o
[  8%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_config.cu.o
[  8%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_eigensolver.cu.o
[  9%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_level.cu.o
[  9%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_signal.cu.o
[ 10%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_solver.cu.o
[ 10%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_c.cu.o
[ 10%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_c_common.cu.o
[ 11%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_cublas.cu.o
[ 11%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_cusolverDn.cu.o
[ 12%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_cusparse.cu.o
[ 12%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_eig_c.cu.o
[ 12%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_lapack.cu.o
[ 13%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_timer.cu.o
[ 13%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_types/io.cu.o
[ 14%] Building CUDA object CMakeFiles/amgx_libs.dir/src/api_version.cu.o
[ 14%] Building CUDA object CMakeFiles/amgx_libs.dir/src/auxdata.cu.o
[ 14%] Building CUDA object CMakeFiles/amgx_libs.dir/src/blas.cu.o
[ 15%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/classical_amg_level.cu.o
/home/amin/Code/AMGX/src/amgx_cusparse.cu: In function ‘void amgx::generic_SpMV(cusparseHandle_t, cusparseOperation_t, int, int, int, const MatType*, const MatType*, const IndType*, const IndType*, const VecType*, const VecType*, VecType*, cudaDataType, cudaDataType, CUstream_st* const&)’:
/home/amin/Code/AMGX/src/amgx_cusparse.cu:1038:108: warning: ‘CUSPARSE_CSRMV_ALG2’ is deprecated: please use CUSPARSE_SPMV_CSR_ALG2 instead [-Wdeprecated-declarations]
     cusparseCheckError(cusparseSpMV_bufferSize(handle, trans, alpha, matA_descr, vecX_descr, beta, vecY_descr, matType, CUSPARSE_CSRMV_ALG2, &bufferSize));
                                                                                                            ^~~~~~~~~~~~~~~~~~~
/usr/local/cuda-11.6/bin/../targets/x86_64-linux/include/cusparse.h:6390:1: note: declared here
     CUSPARSE_CSRMV_ALG2 CUSPARSE_DEPRECATED_ENUM(CUSPARSE_SPMV_CSR_ALG2)    = 3,
 ^   ~~~~~~~~~~~~~~~
/home/amin/Code/AMGX/src/amgx_cusparse.cu:1046:97: warning: ‘CUSPARSE_CSRMV_ALG2’ is deprecated: please use CUSPARSE_SPMV_CSR_ALG2 instead [-Wdeprecated-declarations]
     cusparseCheckError(cusparseSpMV(handle, trans, alpha, matA_descr, vecX_descr, beta, vecY_descr, matType, CUSPARSE_CSRMV_ALG2, dBuffer) );
                                                                                                 ^~~~~~~~~~~~~~~~~~~
/usr/local/cuda-11.6/bin/../targets/x86_64-linux/include/cusparse.h:6390:1: note: declared here
     CUSPARSE_CSRMV_ALG2 CUSPARSE_DEPRECATED_ENUM(CUSPARSE_SPMV_CSR_ALG2)    = 3,
 ^   ~~~~~~~~~~~~~~~
[ 15%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/common.cu.o
[ 16%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/distance1.cu.o
[ 16%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/distance2.cu.o
[ 16%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/interpolator.cu.o
[ 17%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/multipass.cu.o
[ 17%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/aggressive_hmis.cu.o
[ 18%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/aggressive_pmis.cu.o
[ 18%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/cr.cu.o
[ 18%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/dummy_selector.cu.o
[ 19%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/hmis.cu.o
[ 19%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/pmis.cu.o
[ 20%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/rs.cu.o
[ 20%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/selector.cu.o
[ 20%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/strength/affinity.cu.o
[ 21%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/strength/strength.cu.o
[ 21%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/strength/strength_base.cu.o
[ 22%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/absolute.cu.o
[ 22%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/combined_rel_ini_abs.cu.o
[ 22%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/convergence.cu.o
[ 23%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/relative_ini.cu.o
[ 23%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/relative_max.cu.o
[ 24%] Building CUDA object CMakeFiles/amgx_libs.dir/src/core.cu.o
[ 24%] Building CUDA object CMakeFiles/amgx_libs.dir/src/csr_multiply.cu.o
[ 25%] Building CUDA object CMakeFiles/amgx_libs.dir/src/csr_multiply_sm20.cu.o
[ 25%] Building CUDA object CMakeFiles/amgx_libs.dir/src/csr_multiply_sm35.cu.o
[ 25%] Building CUDA object CMakeFiles/amgx_libs.dir/src/csr_multiply_sm70.cu.o
[ 26%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/cg_cycle.cu.o
[ 26%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/cg_flex_cycle.cu.o
[ 27%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/convergence_analysis.cu.o
[ 27%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/cycle.cu.o
[ 27%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/f_cycle.cu.o
[ 28%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/fixed_cycle.cu.o
[ 28%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/v_cycle.cu.o
[ 29%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/w_cycle.cu.o
[ 29%] Building CUDA object CMakeFiles/amgx_libs.dir/src/determinism_checker.cu.o
[ 29%] Building CUDA object CMakeFiles/amgx_libs.dir/src/device_properties.cu.o
[ 30%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_mpi_gpudirect.cu.o
[ 30%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_mpi_hostbuffer_stream.cu.o
[ 31%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_visitors1.cu.o
/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)0, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)0, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)0, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)0, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)0, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)0, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)0, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)0, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)1, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)1, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)1, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)1, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>]" 
(1621): here

[ 31%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_visitors2.cu.o
[ 31%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_visitors3.cu.o
[ 32%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_visitors4.cu.o
/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)0, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)0, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)0, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)0, (AMGX_MatPrecision)0, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)0, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)0, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)0, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)0, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)1, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)1, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>]" 
(1621): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)1, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)1, (AMGX_MatPrecision)1, (AMGX_IndPrecision)2>]" 
(1621): here

[ 32%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/distributed_arranger.cu.o
/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)3, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)3, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)3, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)3, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)3, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)3, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)3, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)3, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)4, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)4, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)4, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)1, (AMGX_VecPrecision)4, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)3, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)3, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)3, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)3, (AMGX_MatPrecision)3, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)3, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)3, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)3, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)3, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)4, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>, T=int, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)2, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>>]" 
(1519): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int &, amgx::CommsMPIHostBufferStream<T_Config>::HIVector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)4, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>]" 
(1622): here

/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu(1544): error: argument of type "const int64_t *" is incompatible with parameter of type "void *"
          detected during:
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather_templated(const T &, T2 &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)4, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>, T=int64_t, T2=amgx::Vector<amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)8, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>>]" 
(1522): here
            instantiation of "void amgx::CommsMPIHostBufferStream<T_Config>::all_gather(const int64_t &, amgx::CommsMPIHostBufferStream<T_Config>::HI64Vector &, int) [with T_Config=amgx::TemplateConfig<(AMGX_MemorySpace)0, (AMGX_VecPrecision)4, (AMGX_MatPrecision)4, (AMGX_IndPrecision)2>]" 
(1622): here

24 errors detected in the compilation of "/home/amin/Code/AMGX/src/distributed/comms_mpi_hostbuffer_stream.cu".
CMakeFiles/amgx_libs.dir/build.make:1083: recipe for target 'CMakeFiles/amgx_libs.dir/src/distributed/comms_mpi_hostbuffer_stream.cu.o' failed
make[2]: *** [CMakeFiles/amgx_libs.dir/src/distributed/comms_mpi_hostbuffer_stream.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMakeFiles/Makefile2:139: recipe for target 'CMakeFiles/amgx_libs.dir/all' failed
make[1]: *** [CMakeFiles/amgx_libs.dir/all] Error 2
Makefile:135: recipe for target 'all' failed
make: *** [all] Error 2
marsaev commented 2 years ago

Which MPI do you use? it seems that compiler error points out to the MPI_Allgather function. Can you check that signature of MPI_Allgather() in your MPI matches with https://www.mpich.org/static/docs/latest/www3/MPI_Allgather.html ?

ma-sadeghi commented 2 years ago

@marsaev Thank you for your reply. I reinstalled mpich using conda-forge and I no longer get the MPI error. But, I'm back to the original error I was getting earlier:

For reference: I'm using the latest CUDA installed from the official NVIDIA conda channel here.

(amgx) amin@zaboor:build$ make all
[  0%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/aggregation_amg_level.cu.o
/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(1983): error: identifier "profileSubphaseFindAggregates" is undefined

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(2003): error: identifier "profileSubphaseFindAggregates" is undefined

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(2327): error: identifier "profileSubphaseComputeCoarseA" is undefined

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(2603): error: identifier "profileSubphaseComputeRestriction" is undefined

/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu(2609): error: identifier "profileSubphaseComputeCoarseA" is undefined

5 errors detected in the compilation of "/home/amin/Code/AMGX/src/aggregation/aggregation_amg_level.cu".
make[2]: *** [CMakeFiles/amgx_libs.dir/build.make:76: CMakeFiles/amgx_libs.dir/src/aggregation/aggregation_amg_level.cu.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:140: CMakeFiles/amgx_libs.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
marsaev commented 2 years ago

I'm checking the build with CUDA 11.6, GCC 7.5 and some OpenMpi:

# CUDACXX=/usr/local/cuda/bin/nvcc /opt/cmake/bin/cmake -DCMAKE_CUDA_ARCHITECTURES="60;70;80" ../
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- The CUDA compiler identification is NVIDIA 11.6.124
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- Check for working CUDA compiler: /usr/local/cuda/bin/nvcc - skipped
-- Detecting CUDA compile features
-- Detecting CUDA compile features - done
-- Found MPI_C: /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so (found version "3.1")
-- Found MPI_CXX: /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi_cxx.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1")
-- Found CUDAToolkit: /usr/local/cuda/include (found suitable version "11.6.124", minimum required is "10.0")
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found OpenMP_C: -fopenmp (found version "4.5")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
This is a MPI build:TRUE
-- Configuring done
-- Generating done
-- Build files have been written to: /AMGX/build

And it builds (with some warnings) just fine on Ubuntu 18.04 image:

# make -j12 all
[  1%] Building CUDA object src/CMakeFiles/amgx_tests_libs.dir/testframework.cu.o
[  1%] Building CUDA object src/CMakeFiles/amgx_tests_libs.dir/unit_test.cu.o
[  1%] Building CUDA object src/CMakeFiles/amgx_tests_libs.dir/test_utils.cu.o
[  1%] Built target copy_configs_core
[  1%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/coarseAgenerators/hybrid_coarse_A_generator.cu.o
[  1%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/aggregation_amg_level.cu.o
[  3%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/coarseAgenerators/thrust_coarse_A_generator.cu.o
[  3%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/coarseAgenerators/coarse_A_generator.cu.o
[  3%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/coarseAgenerators/low_deg_coarse_A_generator.cu.o
[  3%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/adaptive.cu.o
[  4%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/agg_selector.cu.o
[  4%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/geo_selector.cu.o
[  4%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/dummy.cu.o
[  5%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/multi_pairwise.cu.o
[  5%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/parallel_greedy_selector.cu.o
[  6%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/selector_kernels.cu.o
[  6%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/serial_greedy.cu.o
[  6%] Built target amgx_tests_libs
[  6%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/size2_selector.cu.o
[  7%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/size4_selector.cu.o
[  7%] Building CUDA object CMakeFiles/amgx_libs.dir/src/aggregation/selectors/size8_selector.cu.o
[  8%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg.cu.o
[  8%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_config.cu.o
[  8%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_eigensolver.cu.o
[  9%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_level.cu.o
[  9%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_signal.cu.o
[ 10%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amg_solver.cu.o
[ 10%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_c.cu.o
[ 10%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_c_common.cu.o
[ 11%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_cublas.cu.o
[ 11%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_cusolverDn.cu.o
[ 12%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_cusparse.cu.o
[ 12%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_eig_c.cu.o
[ 12%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_lapack.cu.o
[ 13%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_timer.cu.o
[ 13%] Building CUDA object CMakeFiles/amgx_libs.dir/src/amgx_types/io.cu.o
[ 14%] Building CUDA object CMakeFiles/amgx_libs.dir/src/api_version.cu.o
[ 14%] Building CUDA object CMakeFiles/amgx_libs.dir/src/auxdata.cu.o
[ 14%] Building CUDA object CMakeFiles/amgx_libs.dir/src/blas.cu.o
[ 15%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/classical_amg_level.cu.o
/AMGX/src/amgx_cusparse.cu: In function 'void amgx::generic_SpMV(cusparseHandle_t, cusparseOperation_t, int, int, int, const MatType*, const MatType*, const IndType*, const IndType*, const VecType*, const VecType*, VecType*, cudaDataType, cudaDataType, CUstream_st* const&)':
/AMGX/src/amgx_cusparse.cu:1038:108: warning: 'CUSPARSE_CSRMV_ALG2' is deprecated: please use CUSPARSE_SPMV_CSR_ALG2 instead [-Wdeprecated-declarations]
     cusparseCheckError(cusparseSpMV_bufferSize(handle, trans, alpha, matA_descr, vecX_descr, beta, vecY_descr, matType, CUSPARSE_CSRMV_ALG2, &bufferSize));
                                                                                                            ^~~~~~~~~~~~~~~~~~~
/usr/local/cuda/targets/x86_64-linux/include/cusparse.h:6390:1: note: declared here
     CUSPARSE_CSRMV_ALG2 CUSPARSE_DEPRECATED_ENUM(CUSPARSE_SPMV_CSR_ALG2)    = 3,
 ^   ~~~~~~~~~~~~~~~
/AMGX/src/amgx_cusparse.cu:1046:97: warning: 'CUSPARSE_CSRMV_ALG2' is deprecated: please use CUSPARSE_SPMV_CSR_ALG2 instead [-Wdeprecated-declarations]
     cusparseCheckError(cusparseSpMV(handle, trans, alpha, matA_descr, vecX_descr, beta, vecY_descr, matType, CUSPARSE_CSRMV_ALG2, dBuffer) );
                                                                                                 ^~~~~~~~~~~~~~~~~~~
/usr/local/cuda/targets/x86_64-linux/include/cusparse.h:6390:1: note: declared here
     CUSPARSE_CSRMV_ALG2 CUSPARSE_DEPRECATED_ENUM(CUSPARSE_SPMV_CSR_ALG2)    = 3,
 ^   ~~~~~~~~~~~~~~~
[ 15%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/common.cu.o
[ 16%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/distance1.cu.o
[ 16%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/distance2.cu.o
[ 16%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/interpolator.cu.o
[ 17%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/interpolators/multipass.cu.o
[ 17%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/aggressive_hmis.cu.o
[ 18%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/aggressive_pmis.cu.o
[ 18%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/cr.cu.o
[ 18%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/dummy_selector.cu.o
[ 19%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/hmis.cu.o
[ 19%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/pmis.cu.o
[ 20%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/rs.cu.o
[ 20%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/selectors/selector.cu.o
[ 20%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/strength/affinity.cu.o
[ 21%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/strength/strength.cu.o
[ 21%] Building CUDA object CMakeFiles/amgx_libs.dir/src/classical/strength/strength_base.cu.o
[ 22%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/absolute.cu.o
[ 22%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/combined_rel_ini_abs.cu.o
[ 22%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/convergence.cu.o
[ 23%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/relative_ini.cu.o
[ 23%] Building CUDA object CMakeFiles/amgx_libs.dir/src/convergence/relative_max.cu.o
[ 24%] Building CUDA object CMakeFiles/amgx_libs.dir/src/core.cu.o
[ 24%] Building CUDA object CMakeFiles/amgx_libs.dir/src/csr_multiply.cu.o
[ 25%] Building CUDA object CMakeFiles/amgx_libs.dir/src/csr_multiply_sm20.cu.o
[ 25%] Building CUDA object CMakeFiles/amgx_libs.dir/src/csr_multiply_sm35.cu.o
[ 25%] Building CUDA object CMakeFiles/amgx_libs.dir/src/csr_multiply_sm70.cu.o
[ 26%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/cg_cycle.cu.o
[ 26%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/cg_flex_cycle.cu.o
[ 27%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/convergence_analysis.cu.o
[ 27%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/cycle.cu.o
[ 27%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/f_cycle.cu.o
[ 28%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/fixed_cycle.cu.o
[ 28%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/v_cycle.cu.o
[ 29%] Building CUDA object CMakeFiles/amgx_libs.dir/src/cycles/w_cycle.cu.o
[ 29%] Building CUDA object CMakeFiles/amgx_libs.dir/src/determinism_checker.cu.o
[ 29%] Building CUDA object CMakeFiles/amgx_libs.dir/src/device_properties.cu.o
[ 30%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_mpi_gpudirect.cu.o
[ 30%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_mpi_hostbuffer_stream.cu.o
[ 31%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_visitors1.cu.o
[ 31%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_visitors2.cu.o
[ 31%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_visitors3.cu.o
[ 32%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/comms_visitors4.cu.o
[ 32%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/distributed_arranger.cu.o
[ 33%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/distributed_comms.cu.o
[ 33%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/distributed_io.cu.o
[ 33%] Building CUDA object CMakeFiles/amgx_libs.dir/src/distributed/distributed_manager.cu.o
[ 34%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers.cu.o
[ 34%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/arnoldi_eigensolver.cu.o
[ 35%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/eigensolver.cu.o
[ 35%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/eigenvector_solver.cu.o
[ 35%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/jacobi_davidson_eigensolver.cu.o
[ 36%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/lanczos_eigensolver.cu.o
[ 36%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/lobpcg_eigensolver.cu.o
[ 37%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/multivector_operations.cu.o
[ 37%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/qr.cu.o
[ 37%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/single_iteration_eigensolver.cu.o
[ 38%] Building CUDA object CMakeFiles/amgx_libs.dir/src/eigensolvers/subspace_iteration_eigensolver.cu.o
[ 38%] Building CUDA object CMakeFiles/amgx_libs.dir/src/energymin/energymin_amg_level.cu.o
[ 39%] Building CUDA object CMakeFiles/amgx_libs.dir/src/energymin/interpolators/em.cu.o
[ 39%] Building CUDA object CMakeFiles/amgx_libs.dir/src/energymin/interpolators/em_interpolator.cu.o
[ 39%] Building CUDA object CMakeFiles/amgx_libs.dir/src/energymin/selectors/em_selector.cu.o
[ 40%] Building CUDA object CMakeFiles/amgx_libs.dir/src/error.cu.o
[ 40%] Building CUDA object CMakeFiles/amgx_libs.dir/src/gaussian_elimination.cu.o
[ 41%] Building CUDA object CMakeFiles/amgx_libs.dir/src/global_thread_handle.cu.o
[ 41%] Building CUDA object CMakeFiles/amgx_libs.dir/src/hash_workspace.cu.o
[ 41%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix.cu.o
[ 42%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_analysis.cu.o
[ 42%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/coloring_utils.cu.o
[ 43%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/greedy_min_max_2ring.cu.o
[ 43%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/greedy_recolor.cu.o
[ 43%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/locally_downwind.cu.o
[ 44%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/matrix_coloring.cu.o
/AMGX/src/matrix_coloring/greedy_recolor.cu(213): warning #174-D: expression has no effect
          detected during:
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::color_matrix_specialized_per_numhash<K1,COLORING_ORDER,DO_SORT>(amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::Matrix_d &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2, K1=2, COLORING_ORDER=1, DO_SORT=0]"
(872): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::colorMatrix(amgx::Matrix<amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::TConfig_d> &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2]"
(1190): here

/AMGX/src/matrix_coloring/greedy_recolor.cu(153): warning #174-D: expression has no effect
          detected during:
            instantiation of "void amgx::fast_multihash_kernel<DISCARD_COLORED_T,HASHES,COLORING_LEVEL,CTA_SIZE,WARP_SIZE>(int, const int *, const int *, int *, const int *, int, int, int *) [with DISCARD_COLORED_T=false, HASHES=2, COLORING_LEVEL=1, CTA_SIZE=256, WARP_SIZE=1]"
(953): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::color_matrix_specialized_per_numhash<K1,COLORING_ORDER,DO_SORT>(amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::Matrix_d &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2, K1=2, COLORING_ORDER=1, DO_SORT=0]"
(872): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::colorMatrix(amgx::Matrix<amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::TConfig_d> &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2]"
(1190): here

[ 44%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/min_max.cu.o
[ 45%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/min_max_2ring.cu.o
[ 45%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/multi_hash.cu.o
/AMGX/src/matrix_coloring/greedy_recolor.cu(213): warning #174-D: expression has no effect
          detected during:
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::color_matrix_specialized_per_numhash<K1,COLORING_ORDER,DO_SORT>(amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::Matrix_d &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2, K1=2, COLORING_ORDER=1, DO_SORT=0]"
(872): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::colorMatrix(amgx::Matrix<amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::TConfig_d> &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2]"
(1190): here

/AMGX/src/matrix_coloring/greedy_recolor.cu(153): warning #174-D: expression has no effect
          detected during:
            instantiation of "void amgx::fast_multihash_kernel<DISCARD_COLORED_T,HASHES,COLORING_LEVEL,CTA_SIZE,WARP_SIZE>(int, const int *, const int *, int *, const int *, int, int, int *) [with DISCARD_COLORED_T=false, HASHES=2, COLORING_LEVEL=1, CTA_SIZE=256, WARP_SIZE=1]"
(953): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::color_matrix_specialized_per_numhash<K1,COLORING_ORDER,DO_SORT>(amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::Matrix_d &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2, K1=2, COLORING_ORDER=1, DO_SORT=0]"
(872): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::colorMatrix(amgx::Matrix<amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::TConfig_d> &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2]"
(1190): here

[ 45%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/parallel_greedy.cu.o
[ 46%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/round_robin.cu.o
[ 46%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/serial_greedy_bfs.cu.o
[ 47%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_coloring/uniform.cu.o
[ 47%] Building CUDA object CMakeFiles/amgx_libs.dir/src/matrix_io.cu.o
[ 47%] Building CUDA object CMakeFiles/amgx_libs.dir/src/memory_info.cu.o
[ 48%] Building CUDA object CMakeFiles/amgx_libs.dir/src/misc.cu.o
[ 48%] Building CUDA object CMakeFiles/amgx_libs.dir/src/multiply.cu.o
[ 49%] Building CUDA object CMakeFiles/amgx_libs.dir/src/norm.cu.o
/AMGX/src/matrix_coloring/greedy_recolor.cu(213): warning #174-D: expression has no effect
          detected during:
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::color_matrix_specialized_per_numhash<K1,COLORING_ORDER,DO_SORT>(amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::Matrix_d &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2, K1=2, COLORING_ORDER=1, DO_SORT=0]"
(872): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::colorMatrix(amgx::Matrix<amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::TConfig_d> &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2]"
(1190): here

/AMGX/src/matrix_coloring/greedy_recolor.cu(153): warning #174-D: expression has no effect
          detected during:
            instantiation of "void amgx::fast_multihash_kernel<DISCARD_COLORED_T,HASHES,COLORING_LEVEL,CTA_SIZE,WARP_SIZE>(int, const int *, const int *, int *, const int *, int, int, int *) [with DISCARD_COLORED_T=false, HASHES=2, COLORING_LEVEL=1, CTA_SIZE=256, WARP_SIZE=1]"
(953): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::color_matrix_specialized_per_numhash<K1,COLORING_ORDER,DO_SORT>(amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::Matrix_d &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2, K1=2, COLORING_ORDER=1, DO_SORT=0]"
(872): here
            instantiation of "void amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::colorMatrix(amgx::Matrix<amgx::Greedy_Recolor_MatrixColoring<amgx::TemplateConfig<(AMGX_MemorySpace)1, V, M, I>>::TConfig_d> &) [with V=(AMGX_VecPrecision)0, M=(AMGX_MatPrecision)0, I=(AMGX_IndPrecision)2]"
(1190): here

[ 49%] Building CUDA object CMakeFiles/amgx_libs.dir/src/operators/deflated_multiply_operator.cu.o
[ 50%] Building CUDA object CMakeFiles/amgx_libs.dir/src/operators/pagerank_operator.cu.o
[ 50%] Building CUDA object CMakeFiles/amgx_libs.dir/src/operators/shifted_operator.cu.o
[ 50%] Building CUDA object CMakeFiles/amgx_libs.dir/src/operators/solve_operator.cu.o
[ 51%] Building CUDA object CMakeFiles/amgx_libs.dir/src/operators/solver_operator.cu.o
[ 51%] Building CUDA object CMakeFiles/amgx_libs.dir/src/profile.cu.o
[ 52%] Building CUDA object CMakeFiles/amgx_libs.dir/src/readers.cu.o
[ 52%] Building CUDA object CMakeFiles/amgx_libs.dir/src/resources.cu.o
[ 52%] Building CUDA object CMakeFiles/amgx_libs.dir/src/scalers/binormalization.cu.o
[ 53%] Building CUDA object CMakeFiles/amgx_libs.dir/src/scalers/diagonal_symmetric.cu.o
[ 53%] Building CUDA object CMakeFiles/amgx_libs.dir/src/scalers/nbinormalization.cu.o
[ 54%] Building CUDA object CMakeFiles/amgx_libs.dir/src/scalers/scaler.cu.o
[ 54%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/algebraic_multigrid_solver.cu.o
[ 54%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/bicgstab_solver.cu.o
[ 55%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/block_jacobi_solver.cu.o
/AMGX/src/matrix_coloring/greedy_recolor.cu(153): warning #174-D: expression has no effect

/AMGX/src/matrix_coloring/greedy_recolor.cu(213): warning #174-D: expression has no effect

[ 55%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/cf_jacobi_solver.cu.o
[ 56%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/cg_solver.cu.o
[ 56%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/cheb_solver.cu.o
[ 56%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/chebyshev_poly.cu.o
[ 57%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/dense_lu_solver.cu.o
[ 57%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/dummy_solver.cu.o
[ 58%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/fgmres_solver.cu.o
[ 58%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/fixcolor_gauss_seidel_solver.cu.o
[ 58%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/gauss_seidel_solver.cu.o
[ 59%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/gmres_solver.cu.o
[ 59%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/idr_solver.cu.o
[ 60%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/idrmsync_solver.cu.o
[ 60%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/jacobi_l1_solver.cu.o
[ 60%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/kaczmarz_solver.cu.o
[ 61%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/kpz_polynomial_solver.cu.o
[ 61%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/multicolor_dilu_solver.cu.o
[ 62%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/multicolor_gauss_seidel_solver.cu.o
[ 62%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/multicolor_ilu_solver.cu.o
[ 62%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/pbicgstab_solver.cu.o
[ 63%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/pcg_solver.cu.o
[ 63%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/pcgf_solver.cu.o
[ 64%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/polynomial_solver.cu.o
[ 64%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/solver.cu.o
[ 64%] Building CUDA object CMakeFiles/amgx_libs.dir/src/solvers/user_solver.cu.o
[ 65%] Building CUDA object CMakeFiles/amgx_libs.dir/src/sort.cu.o
[ 65%] Building CUDA object CMakeFiles/amgx_libs.dir/src/test_utils.cu.o
[ 66%] Building CUDA object CMakeFiles/amgx_libs.dir/src/testframework.cu.o
[ 66%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/IDR_Convergence_Poisson.cu.o
[ 66%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/IDRmsync_Convergence_Poisson.cu.o
[ 67%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/aggregates_coarse_generator.cu.o
[ 67%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/aggregates_coarsening_factor.cu.o
[ 68%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/aggregates_determinism_test.cu.o
[ 68%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/aggregates_diagonal_outside_test.cu.o
[ 68%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/amg_levels_reuse.cu.o
[ 69%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/block_conversion.cu.o
[ 69%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/capi_graceful_failure.cu.o
[ 70%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/capi_upload_tests.cu.o
[ 70%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/classical_pmis.cu.o
[ 70%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/classical_strength.cu.o
[ 71%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/classical_strength_affinity.cu.o
[ 71%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/config_parsing.cu.o
[ 72%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/csr_multiply.cu.o
[ 72%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/csr_sparsity.cu.o
[ 72%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/csr_sparsity_ilu1.cu.o
[ 73%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/custom_memory_use.cu.o
[ 73%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/dense_lu.cu.o
[ 74%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/eigensolver_test.cu.o
[ 74%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/energymin_algorithm.cu.o
[ 75%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/factories.cu.o
[ 75%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/fgmres_convergence_poisson.cu.o
[ 75%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/generated_matrix_distributed_io.cu.o
[ 76%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/generated_matrix_io.cu.o
[ 76%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/generic_spmv.cu.o
[ 77%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/ilu1_coloringA.cu.o
[ 77%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/ilu1_in_vs_out_diag.cu.o
[ 77%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/ilu_dilu_equivalence.cu.o
[ 78%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/large_matrices_support.cu.o
[ 78%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/low_deg_determinism.cu.o
[ 79%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/matrix_coloring_test.cu.o
[ 79%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/matrix_tests.cu.o
[ 79%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/matrix_vector_multiply_tests.cu.o
[ 80%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/memory_use.cu.o
[ 80%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/multi_pairwise_test.cu.o
[ 81%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/nested_amg_equivalence.cu.o
[ 81%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/nested_solvers.cu.o
[ 81%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/norm_tests.cu.o
[ 82%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/object_destruction.cu.o
[ 82%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/permute_tests.cu.o
[ 83%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/preconditioner_usage.cu.o
[ 83%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/profile_test.cu.o
[ 83%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/random_matrix_generation.cu.o
[ 84%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/row_maj_vs_col_maj.cu.o
[ 84%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/scalar_smoother_poisson.cu.o
[ 85%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/smoother_block_poisson.cu.o
[ 85%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/smoother_blocksizes.cu.o
[ 85%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/smoother_cusparse.cu.o
[ 86%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/smoother_nan_random.cu.o
[ 86%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/template_config.cu.o
[ 87%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/template_test.cu.o
[ 87%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/truncate_count_test.cu.o
[ 87%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/valid_coloring.cu.o
[ 88%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/vector_tests.cu.o
[ 88%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/version_test.cu.o
[ 89%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/zero_in_diagonal_handling.cu.o
[ 89%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/zero_off_diagonal_handling.cu.o
[ 89%] Building CUDA object CMakeFiles/amgx_libs.dir/src/tests/zero_values_handling.cu.o
[ 90%] Building CUDA object CMakeFiles/amgx_libs.dir/src/thread_manager.cu.o
[ 90%] Building CUDA object CMakeFiles/amgx_libs.dir/src/transpose.cu.o
[ 91%] Building CUDA object CMakeFiles/amgx_libs.dir/src/truncate.cu.o
[ 91%] Building CUDA object CMakeFiles/amgx_libs.dir/src/unit_test.cu.o
[ 91%] Building CUDA object CMakeFiles/amgx_libs.dir/src/utest.cu.o
[ 92%] Building CUDA object CMakeFiles/amgx_libs.dir/src/version.cu.o
[ 92%] Built target amgx_libs
[ 92%] Linking CUDA static library libamgx.a
[ 93%] Linking CUDA shared library libamgxsh.so
[ 93%] Built target amgx
[ 93%] Building CUDA object examples/CMakeFiles/generate_poisson7_dist_renum.dir/generate_poisson7_dist_renum.cu.o
[ 93%] Linking CUDA static library libamgx_tests_library.a
[ 93%] Building CUDA object examples/CMakeFiles/generate_poisson.dir/generate_poisson.cu.o
[ 93%] Built target amgx_tests_library
[ 93%] Built target amgxsh
[ 93%] Building CUDA object src/CMakeFiles/amgx_tests_launcher.dir/utest.cu.o
[ 93%] Building C object examples/CMakeFiles/amgx_capi.dir/amgx_capi.c.o
[ 93%] Building C object examples/CMakeFiles/amgx_mpi_capi.dir/amgx_mpi_capi.c.o
[ 94%] Building C object examples/CMakeFiles/amgx_mpi_capi_cla.dir/amgx_mpi_capi_cla.c.o
[ 94%] Building C object examples/CMakeFiles/amgx_mpi_capi_agg.dir/amgx_mpi_capi_agg.c.o
[ 95%] Building C object examples/CMakeFiles/amgx_mpi_poisson7.dir/amgx_mpi_poisson7.c.o
[ 96%] Linking C executable amgx_capi
[ 97%] Linking C executable amgx_mpi_capi
[ 97%] Linking C executable amgx_mpi_poisson7
[ 97%] Linking C executable amgx_mpi_capi_cla
[ 97%] Linking C executable amgx_mpi_capi_agg
[ 97%] Built target amgx_capi
[ 97%] Built target amgx_mpi_poisson7
[ 97%] Built target amgx_mpi_capi
[ 97%] Built target amgx_mpi_capi_cla
[ 97%] Built target amgx_mpi_capi_agg
[ 98%] Linking CUDA executable generate_poisson7_dist_renum
[ 98%] Built target generate_poisson7_dist_renum
[ 99%] Linking CUDA executable generate_poisson
[ 99%] Built target generate_poisson
[100%] Linking CUDA executable amgx_tests_launcher
[100%] Built target amgx_tests_launcher

Do you see anything different in your configuration? Cmake configuration flags? I see header https://github.com/NVIDIA/AMGX/blob/main/src/aggregation/aggregation_amg_level.cu#L29 is included in aggregation_amg_level.cu and here are declarations: https://github.com/NVIDIA/AMGX/blob/main/include/profile.h#L29-L41

Can you check integrity of your repo clone?

Thanks,

ma-sadeghi commented 2 years ago

@marsaev Thank you so much for your reply. I'll definitely look into it and will report back.

In the meantime, do you think the AMGX team would consider publishing AMGX builds on conda-forge, so the installation is more streamlined? Thank you so much once again for all your efforts!

marsaev commented 2 years ago

@ma-sadeghi That is a tricky one. Problem is that there are dozens of configurations possible: builds for each AMGX version - for each platform - for each CUDA version - for each MPI (or no-MPI). There is also a possibility switching to full header mode, rendering such builds much less useful.

xucao-42 commented 1 year ago

I met the same problem. In my case, the problem is solved by enforcing single GPU (Non-MPI) build. cmake ../ -D CMAKE_NO_MPI=True