Re: [eigen] Help to compile/run unit tests for next 3.3.5 release

[ Thread Index | Date Index | More Archives ]

Trying a test run with VS2015 in Release with -DEIGEN_TEST_CXX11=ON and found a few reg tests taking over 4 hours to compile on an i7-6850K 6.6 GHz with 64 MB RAM, 6 cores (12 threads) on Windows 7.


C:\PROGRA~2\MICROS~1.0\VC\bin\amd64\cl.exe /nologo /TP -Itest -I..\test -I..\ -I. /DWIN32 /D_WINDOWS /W4 /GR /EHsc /EHsc /wd4127 /wd4505 /wd4714 /D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS /MD /O2 /Ob2 /DNDEBUG -DEIGEN_TEST_MAX_SIZE=320 -DEIGEN_TEST_FUNC=sparse_product /bigobj -DEIGEN_TEST_PART_2=1 /showIncludes /Fotest\CMakeFiles\sparse_product_2.dir\sparse_product.cpp.obj /Fdtest\CMakeFiles\sparse_product_2.dir\ /FS -c C:\cygwin\tmp\eigen3.3\test\sparse_product.cpp
(currently using 2.77 GB)

C:\PROGRA~2\MICROS~1.0\VC\bin\amd64\cl.exe /nologo /TP -Iunsupported\test -I..\unsupported\test -I..\ -I. -I..\unsupported\test\..\..\test -I..\unsupported\test\..\..\unsupported -I..\unsupported\test\..\..\Eigen -Iunsupported\test\..\..\test /DWIN32 /D_WINDOWS /W4 /GR /EHsc /EHsc /wd4127 /wd4505 /wd4714 /D_CRT_SECURE_NO_WARNINGS /D_SCL_SECURE_NO_WARNINGS /MD /O2 /Ob2 /DNDEBUG -DEIGEN_TEST_MAX_SIZE=320 -DEIGEN_TEST_FUNC=sparse_extra /bigobj -DEIGEN_TEST_PART_2=1 /showIncludes /Founsupported\test\CMakeFiles\sparse_extra_2.dir\sparse_extra.cpp.obj /Fdunsupported\test\CMakeFiles\sparse_extra_2.dir\ /FS -c C:\cygwin\tmp\eigen3.3\unsupported\test\sparse_extra.cpp
(currently using 2.59 GB)

There was more, but they seem to have finished in the time I got distracted and came back an hour later.


On 12/16/2017 8:13 PM, Edward Lam wrote:
I finally noticed that cmake was using the 32-bit cross compiler for 64-bit for some reason even though I explicitly started the x64 Native Tools Command Prompt. And then it looked like even using /MP4 didn't actually parallelize the build because we're mostly building just 1 file per test executable.

Instead of trying to figure out how to get ctest to invoke msbuild with the right parallelization option, I just went with the ninja generator instead. eg.
- Ensure ninja.exe is in the PATH (
- cd eigen-3.3
- mkdir build
- cd build
- cmake -G Ninja ..
- ctest -D Experimental -j

That built in a few minutes(!) whereas before, I never managed to finish building the tests in over 7 hours. The Ninja generator detected to use the native x64 compiler (in the same command prompt window).

It's now been running about 2.5 hours and I'm test 285/772 now. So hopefully it'll finish running the benchmark in another few hours.


On 12/16/2017 7:15 PM, Bill Greene wrote:
I am also running the tests on 64-bit VS2017. My system is significantly slower than yours and it took
over 16 hours to complete the tests.

On Sat, Dec 16, 2017 at 4:21 PM, Edward Lam <edward@xxxxxxxxxx <mailto:edward@xxxxxxxxxx>> wrote:

    It's doesn't seem to be work for me on VS2017 though. I let it run for over
    7 hours and it still hasn't finished on my i7-6850K 4.6 GHz with 64 MB of
    RAM, 6 cores, 12 threads on Windows 7. I've attached my build log, which was
    invoked from the native 64-bit VS2017 cmd shell and generated using the
    windows versino of cmake 3.7.2.


    On 12/15/2017 11:59 AM, Gael Guennebaud wrote:

        On Fri, Dec 15, 2017 at 9:54 AM, Gael Guennebaud
        <gael.guennebaud@xxxxxxxxx <mailto:gael.guennebaud@xxxxxxxxx>
        <mailto:gael.guennebaud@xxxxxxxxx <mailto:gael.guennebaud@xxxxxxxxx>>>

             ctest -C Release -D Experimental

        there is small issue, the last line should be:

        ctest -D Experimental

        For the record, the build is green for msvc 11 (2012), it would still be
        welcome to get feedback for MSVC 2015 and 2017.


Mail converted by MHonArc 2.6.19+