[mlpack] Memory usage during build
Markus Kolb
mlpack at tower-net.de
Thu Dec 10 08:03:44 EST 2020
Hello,
do you know about the "high" memory usage during build of mlpack?
With version 3.3.2 a machine with guaranteed physical memory of 4.8G
when using 2 CPUs has been enough.
Now when compiling 3.4.2 a machine with 8G physical memory and using 2
CPUs is going in OOM.
[ 5447s] cd /home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build &&
/usr/bin/cmake -E cmake_depends "Unix Makefiles"
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/src/mlpack
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/src/mlpack
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/src/mlpack/CMakeFiles/python_configure.dir/DependInfo.cmake
[ 5447s] Scanning dependencies of target python_configure
[ 5447s] make[2]: Leaving directory
'/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build'
[ 5447s] /usr/bin/make -f
src/mlpack/CMakeFiles/python_configure.dir/build.make
src/mlpack/CMakeFiles/python_configure.dir/build
[ 5447s] make[2]: Entering directory
'/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build'
[ 5447s] [ 39%] Configuring setup.py...
[ 5447s] cd /home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/src/mlpack &&
/usr/bin/cmake -D
SETUP_PY_IN=/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/src/mlpack/bindings/python/setup.py.in
-D
SETUP_PY_OUT=/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/src/mlpack/bindings/python/setup.py
-D PACKAGE_VERSION="3.4.2" -D
Boost_SERIALIZATION_LIBRARY="/usr/lib64/libboost_serialization.so" -D
Boost_LIBRARY_DIRS="/usr/lib64" -D
ARMADILLO_LIBRARIES="/usr/lib64/libarmadillo.so" -D
MLPACK_LIBRARY=/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/lib/libmlpack.so
-D MLPACK_LIBDIR=/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/lib -D
MLPACK_PYXS="arma_numpy.pyx test_python_binding.pyx adaboost.pyx
approx_kfn.pyx bayesian_linear_regression.pyx cf.pyx dbscan.pyx
decision_stump.pyx decision_tree.pyx det.pyx emst.pyx fastmks.pyx
gmm_train.pyx gmm_generate.pyx gmm_probability.pyx hmm_train.pyx
hmm_loglik.pyx hmm_viterbi.pyx hmm_generate.pyx hoeffding_tree.pyx
kde.pyx kernel_pca.pyx kmeans.pyx lars.pyx linear_regression.pyx
linear_svm.pyx lmnn.pyx local_coordinate_coding.pyx
logistic_regression.pyx lsh.pyx mean_shift.pyx nbc.pyx nca.pyx knn.pyx
kfn.pyx nmf.pyx pca.pyx perceptron.pyx preprocess_split.pyx
preprocess_binarize.pyx preprocess_describe.pyx preprocess_scale.pyx
preprocess_one_hot_encoding.pyx image_converter.pyx radical.pyx
random_forest.pyx krann.pyx softmax_regression.pyx sparse_coding.pyx" -D
OpenMP_CXX_FLAGS="-fopenmp" -D DISABLE_CFLAGS="" -D
CYTHON_INCLUDE_DIRECTORIES="/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/src
/usr/include /usr/include /usr/include/stb /usr/include
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/src/mlpack/.." -D
CMAKE_CXX_FLAGS=-fmessage-length=0\ -grecord-gcc-switches\ -O2\ -Wall\
-D_FORTIFY_SOURCE=2\ -fstack-protector-strong\ -funwind-tables\
-fasynchronous-unwind-tables\ -fstack-clash-protection\ -DNDEBUG\ -Wall\
-Wextra\ -ftemplate-depth=1000\ -Wno-unused-function\ -O3\ -fopenmp -D
OUTPUT_DIR=/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build -P
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/src/mlpack/bindings/python/ConfigureSetup.cmake
[ 5447s] -- Run with /usr/lib64/libboost_serialization.so.
[ 5447s] make[2]: Leaving directory
'/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build'
[ 5447s] make[1]: Entering directory
'/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build'
[ 5447s] [ 39%] Built target python_configure
[ 5447s] make[1]: Leaving directory
'/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build'
[ 6994s] [ 6977.215743] Out of memory: Killed process 10354 (cc1plus)
total-vm:8193592kB, anon-rss:5490544kB, file-rss:0kB, shmem-rss:0kB
[ 6995s] make[2]: Entering directory
'/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build'
[ 6995s] [ 38%] Building CXX object
src/mlpack/tests/CMakeFiles/mlpack_catch_test.dir/feedforward_network_test.cpp.o
[ 6995s] cd
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/src/mlpack/tests &&
/usr/bin/c++ -DARMA_NO_DEBUG -DBOOST_TEST_DYN_LINK -DHAS_OPENMP
-DHAS_STB -DNDEBUG -I/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/src
-I/usr/include/stb
-I/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/src/mlpack/..
-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2
-fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables
-fstack-clash-protection -DNDEBUG -Wall -Wextra -ftemplate-depth=1000
-Wno-unused-function -O3 -fopenmp -O2 -g -DNDEBUG -Winvalid-pch
-include
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build/src/mlpack/tests/cotire/mlpack_catch_test_CXX_prefix.hxx
-std=gnu++11 -o
CMakeFiles/mlpack_catch_test.dir/feedforward_network_test.cpp.o -c
/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/src/mlpack/tests/feedforward_network_test.cpp
[ 6995s] c++: internal compiler error: Killed (program cc1plus)
[ 6995s] make[2]: ***
[src/mlpack/tests/CMakeFiles/mlpack_catch_test.dir/build.make:518:
src/mlpack/tests/CMakeFiles/mlpack_catch_test.dir/feedforward_network_test.cpp.o]
Error 4
[ 6995s] make[2]: Leaving directory
'/home/abuild/rpmbuild/BUILD/mlpack-3.4.2/build'
[ 6995s] make[2]: *** Waiting for unfinished jobs....
What is being done here during build that needs so much memory?
In relation to the size of mlpack library this looks strange.
Is the memory usage ok or is there anything wrong in the build process?
Thanks
Markus
More information about the mlpack
mailing list