ALPSCore/CT-HYB

[CI] Compilation fails on Cloudbees

Opened this issue · 12 comments

...apparently because it needs more than 1GB of memory:

[  4%] Building CXX object CMakeFiles/alpscore_cthyb.dir/src/solver_real.cpp.o
/home/jenkins/openmpi-1.10.1/bin/mpic++   -DUSE_QUAD_PRECISION -Dalpscore_cthyb_EXPORTS -I/scratch/jenkins/workspace/cthyb-alpscore-devel/build -I/scratch/jenkins/workspace/cthyb-alpscore-devel -I/scratch/jenkins/workspace/cthyb-alpscore-devel/include -I/scratch/jenkins/workspace/cthyb-alpscore-devel/test -isystem /home/jenkins/boost_1_60_0_b1/include -isystem /home/jenkins/eigen-eigen-5a0156e40feb -isystem /scratch/jenkins/workspace/cthyb-alpscore-devel/ALPSCore/install/include -isystem /home/jenkins/hdf5-1.8.13/include  --param ggc-min-expand=20 --param ggc-min-heapsize=32768 -DALPS_GF_DEBUG -g -fPIC   -std=gnu++11 -o CMakeFiles/alpscore_cthyb.dir/src/solver_real.cpp.o -c /scratch/jenkins/workspace/cthyb-alpscore-devel/src/solver_real.cpp
g++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugzilla.redhat.com/bugzilla> for instructions.
make[2]: *** [CMakeFiles/alpscore_cthyb.dir/src/solver_real.cpp.o] Error 4
make[2]: Leaving directory `/scratch/jenkins/workspace/cthyb-alpscore-devel/build'
make[1]: *** [CMakeFiles/alpscore_cthyb.dir/all] Error 2
make[1]: Leaving directory `/scratch/jenkins/workspace/cthyb-alpscore-devel/build'
make: *** [all] Error 2
-26.30user 2.44system 0:29.91elapsed 96%CPU (0avgtext+0avgdata 908644maxresident)k
360120inputs+36889outputs (41001major+283515minor)pagefaults 0swaps
Build step 'Execute shell' marked build as failure

@shinaoka : Shall we disable the Jenkins build for now?
(We have discussed this issue in person, so feel free to close as [wontfix].)

How about going to Travis?
Are there any other options?

Yes, sure, let's put it to Travis.

It's time to move to Travis.
I'm now studying the configuration file for ALPSCore.
https://github.com/ALPSCore/ALPSCore/blob/master/.travis.yml

Do you run two tests with/without MPI?

env:
  - ENABLE_MPI=ON ALPS_CC=mpicc ALPS_CXX=mpic++
  - ENABLE_MPI=OFF
egull commented

Igor Krivenko is the one who set it up – can I get him involved?

Yes! I am also studying his nice script for pomerol2triqs...

https://github.com/krivenko/pomerol2triqs/blob/master/.travis.yml

I've created a branch named "travis" and committed my first attempt. I will come back tomorrow...
Any help will be welcomed!

@shinaoka

Do you run two tests with/without MPI?

env:
  - ENABLE_MPI=ON ALPS_CC=mpicc ALPS_CXX=mpic++
  - ENABLE_MPI=OFF

Yes. This creates 2 TravisCI runs, with the corresponding sets of environment variables. One set results in compilation with MPI and the other one without. See https://docs.travis-ci.com/user/languages/cpp/#Build-Matrix and https://docs.travis-ci.com/user/environment-variables/#Defining-Multiple-Variables-per-Item

Thank you. I made it.

Anyway, ALPSCore/CT-HYB requires MPI.
So, we should test clang, gcc with MPI.

Could you review my commits? If it's OK, let us marge it into master.

And, should we deactivate Jenkins for CT-HYB? Error messages may be annoying to people in the ALPSCore developer mailing list.

If all CT-HYB builds require MPI, the TravisCI script can be slightly simplified. I can do it.

And, should we deactivate Jenkins for CT-HYB?

Ok. Done.

It would be nicer to have automated tests with Intel C++ on Travis CI.
I found some script for this purpose (we may need a incense).
Have you already discussed this issue at Michigan?

https://github.com/nemequ/icc-travis

egull commented