diff options
Diffstat (limited to 'bench/spbench')
-rw-r--r-- | bench/spbench/CMakeLists.txt | 6 | ||||
-rw-r--r-- | bench/spbench/test_sparseLU.cpp | 8 |
2 files changed, 14 insertions, 0 deletions
diff --git a/bench/spbench/CMakeLists.txt b/bench/spbench/CMakeLists.txt index a093cc5d9..2eb0befa9 100644 --- a/bench/spbench/CMakeLists.txt +++ b/bench/spbench/CMakeLists.txt @@ -66,5 +66,11 @@ target_link_libraries (spbenchsolver ${SPARSE_LIBS}) add_executable(spsolver sp_solver.cpp) target_link_libraries (spsolver ${SPARSE_LIBS}) +if(METIS_FOUND) + include_directories(${METIS_INCLUDES}) + set (SPARSE_LIBS ${SPARSE_LIBS} ${METIS_LIBRARIES}) + add_definitions("-DEIGEN_METIS_SUPPORT") +endif(METIS_FOUND) + add_executable(test_sparseLU test_sparseLU.cpp) target_link_libraries (test_sparseLU ${SPARSE_LIBS}) diff --git a/bench/spbench/test_sparseLU.cpp b/bench/spbench/test_sparseLU.cpp index 59f8252d0..8c78b0c9b 100644 --- a/bench/spbench/test_sparseLU.cpp +++ b/bench/spbench/test_sparseLU.cpp @@ -7,6 +7,9 @@ #include <unsupported/Eigen/SparseExtra> #include <Eigen/SparseLU> #include <bench/BenchTimer.h> +#ifdef EIGEN_METIS_SUPPORT +#include <Eigen/MetisSupport> +#endif using namespace std; using namespace Eigen; @@ -21,7 +24,12 @@ int main(int argc, char **args) typedef Matrix<scalar, Dynamic, 1> DenseRhs; Matrix<scalar, Dynamic, 1> b, x, tmp; // SparseLU<SparseMatrix<scalar, ColMajor>, AMDOrdering<int> > solver; +#ifdef EIGEN_METIS_SUPPORT + SparseLU<SparseMatrix<scalar, ColMajor>, MetisOrdering<int> > solver; +#else SparseLU<SparseMatrix<scalar, ColMajor>, COLAMDOrdering<int> > solver; +#endif + ifstream matrix_file; string line; int n; |