[eigen] Cannot compile benchmark

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Hello

Following the instructions at
http://eigen.tuxfamily.org/index.php?title=How_to_run_the_benchmark_suite
with eigen-3.1.0-beta1 compilation of benchmarks fails:

ilja [ ~/eigen-bench/bench/btl ]$ make
Scanning dependencies of target btl_eigen3_adv
[ 0%] Building CXX object bench/btl/libs/eigen3/CMakeFiles/btl_eigen3_adv.dir/main_adv.cpp.o In file included from /home/ilja/eigen-3.1.0-beta1/bench/btl/libs/eigen3/main_adv.cpp:19:0: /home/ilja/eigen-3.1.0-beta1/bench/btl/libs/eigen3/eigen3_interface.hh: In static member function ”static void eigen3_interface<real, SIZE>::cholesky(const eigen3_interface<real, SIZE>::gene_matrix&, eigen3_interface<real, SIZE>::gene_matrix&, int)”: /home/ilja/eigen-3.1.0-beta1/bench/btl/libs/eigen3/eigen3_interface.hh:207:32: virhe: wrong number of template arguments (1, should be 2) /home/ilja/eigen-3.1.0-beta1/Eigen/src/Cholesky/LLT.h:203:44: virhe: provided for ”template<class Scalar, int UpLo> struct Eigen::internal::llt_inplace” /home/ilja/eigen-3.1.0-beta1/bench/btl/libs/eigen3/eigen3_interface.hh:207:42: virhe: invalid type in declaration before ”(” token /home/ilja/eigen-3.1.0-beta1/bench/btl/libs/eigen3/eigen3_interface.hh: In static member function ”static void eigen3_interface<real, SIZE>::cholesky(const eigen3_interface<real, SIZE>::gene_matrix&, eigen3_interface<real, SIZE>::gene_matrix&, int) [with real = float, int SIZE = -0x00000000000000001, eigen3_interface<real, SIZE>::gene_matrix = Eigen::Matrix<float, -0x00000000000000001, -0x00000000000000001>]”: /home/ilja/eigen-3.1.0-beta1/bench/btl/actions/action_cholesky.hh:98:7: instantiated from ”void Action_cholesky<Interface>::calculate() [with Interface = eigen3_interface<float>]” /home/ilja/eigen-3.1.0-beta1/bench/btl/generic_bench/timers/portable_perf_analyzer.hh:70:7: instantiated from ”double Portable_Perf_Analyzer<Action>::eval_mflops(int) [with Action = Action_cholesky<eigen3_interface<float> >]” /home/ilja/eigen-3.1.0-beta1/bench/btl/generic_bench/bench.hh:78:5: instantiated from ”void bench(int, int, int) [with Perf_Analyzer = Portable_Perf_Analyzer, Action = Action_cholesky<eigen3_interface<float> >]” /home/ilja/eigen-3.1.0-beta1/bench/btl/generic_bench/bench.hh:157:3: instantiated from ”void bench(int, int, int) [with Action = Action_cholesky<eigen3_interface<float> >]” /home/ilja/eigen-3.1.0-beta1/bench/btl/libs/eigen3/main_adv.cpp:34:79: instantiated from here /home/ilja/eigen-3.1.0-beta1/bench/btl/libs/eigen3/eigen3_interface.hh:207:44: virhe: ei voi muuntaa tyypistä ”eigen3_interface<float>::gene_matrix” tyyppiin ”int” (initialization) make[2]: *** [bench/btl/libs/eigen3/CMakeFiles/btl_eigen3_adv.dir/main_adv.cpp.o] Virhe 1 make[1]: *** [bench/btl/libs/eigen3/CMakeFiles/btl_eigen3_adv.dir/all] Virhe 2
make: *** [all] Virhe 2

The configuration step produced this:

-- Standard libraries to link to explicitly: none
-- searching for 'pkgconfig' directory in PKG_CONFIG_LIBDIR ( ), /usr/local/share, and /usr/local/lib
-- found /usr/local/lib/pkgconfig
-- /home/ilja/eigen-bench/test
-- Could NOT find CHOLMOD (missing:  CHOLMOD_INCLUDES CHOLMOD_LIBRARIES)
-- Could NOT find UMFPACK (missing:  UMFPACK_INCLUDES UMFPACK_LIBRARIES)
-- Could NOT find SUPERLU (missing:  SUPERLU_INCLUDES SUPERLU_LIBRARIES)
-- Could NOT find PASTIX (missing:  PASTIX_INCLUDES PASTIX_LIBRARIES)
-- Could NOT find SCOTCH (missing:  SCOTCH_INCLUDES SCOTCH_LIBRARIES)
-- Could NOT find METIS (missing:  METIS_INCLUDES METIS_LIBRARIES)
-- Could NOT find GOOGLEHASH (missing: GOOGLEHASH_INCLUDES GOOGLEHASH_COMPILE)
-- Could NOT find ADOLC (missing:  ADOLC_INCLUDES ADOLC_LIBRARIES)
-- Could NOT find FFTW (missing:  FFTW_INCLUDES FFTW_LIBRARIES)
-- Could not find OPTIONAL package ATLAS
-- Could not find OPTIONAL package MKL
-- Could not find OPTIONAL package GOTO2
-- Could not find OPTIONAL package GOTO
-- Multi-threaded library not found, looking for single-threaded
-- Could not find OPTIONAL package ACML
-- Could not find OPTIONAL package GMM
-- Could not find OPTIONAL package MTL4
-- Could not find OPTIONAL package Blitz
-- Could not find OPTIONAL package Tvmet
-- ************************************************************
-- ***    Eigen's unit tests configuration summary          ***
-- ************************************************************
--
-- Build type:        Release
-- Build site:        mun3
-- Build string:      linux-3.3.8-g++-4.5.2-sse2-64bit
-- Enabled backends:  Qt4 support,  MPFR C++,
-- Disabled backends: Cholmod, UmfPack, SuperLU, PaStiX, GoogleHash, Adolc, fftw, OpenGL,
-- Default order:     Column-major
-- Maximal matrix/vector size: 320
-- SSE2:              Using architecture defaults
-- SSE3:              Using architecture defaults
-- SSSE3:             Using architecture defaults
-- SSE4.1:            Using architecture defaults
-- SSE4.2:            Using architecture defaults
-- Altivec:           Using architecture defaults
-- ARM NEON:          Using architecture defaults
--
CXX:               /usr/bin/c++
 CXX_VERSION:       c++ (GCC) 4.5.2
CXX_FLAGS: -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -Wformat-security -fexceptions -fno-check-new -fno-common -fstrict-aliasing -Wno-variadic-macros -Wextra -pedantic -g2
 Sparse lib flags:

-- ************************************************************
--
-- Configured Eigen 3.0.93
--
-- Some things you can do now:
--
--------------+--------------------------------------------------------------
-- Command       |   Description
--
--------------+--------------------------------------------------------------
-- make install  | Install to /usr/local. To change that:
--               |     cmake . -DCMAKE_INSTALL_PREFIX=yourpath
--               |   Eigen headers will then be installed to:
--               |     /usr/local/include/eigen3
--               |   To install Eigen headers to a separate location, do:
--               |     cmake . -DEIGEN_INCLUDE_INSTALL_DIR=yourpath
-- make doc      | Generate the API documentation, requires Doxygen & LaTeX
-- make check    | Build and run the unit-tests. Read this page:
--               |   http://eigen.tuxfamily.org/index.php?title=Tests
-- make blas     | Build BLAS library (not the same thing as Eigen)
--
--------------+--------------------------------------------------------------
--
-- Configuring done
-- Generating done
-- Build files have been written to: /home/ilja/eigen-bench

The first tests from make check work so this seems like a benchmark related problem. GCC is 4.5.2.

Ilja



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/