Pybombs building 3.6.5.1 - swapping and out of virtual memory

Not sure if this is a Pybombs or Gnuradio build issue: When building
version 3.6.5.1 via pybombs the system starts swapping after about 70%
of the build have completed and even sometimes bails out with “out of
virtual memory”. I can complete the build by restarting pybombs install

  • sometimes several times.
    I am building on XUbuntu 12.04 64bit - both machines have 4Gb RAM.
    I notice that “top” shows several cc1plus processes running in parallel
    each consuming over 1Gb of memory.

On Mon, Jul 29, 2013 at 12:40 PM, M Dammer [email protected] wrote:

Not sure if this is a Pybombs or Gnuradio build issue: When building
version 3.6.5.1 via pybombs the system starts swapping after about 70%
of the build have completed and even sometimes bails out with “out of
virtual memory”. I can complete the build by restarting pybombs install

  • sometimes several times.
    I am building on XUbuntu 12.04 64bit - both machines have 4Gb RAM.
    I notice that “top” shows several cc1plus processes running in parallel
    each consuming over 1Gb of memory.

That’s a GNU Radio issue, not PyBOMBS. The 3.6.5 series is
particularly bad about memory usage since there’s a lot of duplicated
blocks.

Best advice for you is to edit templates/cmake.lwt in PyBOMBS and
change it from ‘make -j4’ to ‘make -j3’ (or -j2 to be even more safe,
but -j3 on my 4 GB machine tends to be ok).

Tom

Thanks for all the quick replies. I will go for changing cmake.lwt as I
rather have a longer compile time than insane disk activity.

On 07/29/2013 12:40 PM, M Dammer wrote:

Not sure if this is a Pybombs or Gnuradio build issue: When building
version 3.6.5.1 via pybombs the system starts swapping after about 70%
of the build have completed and even sometimes bails out with “out of
virtual memory”. I can complete the build by restarting pybombs install

  • sometimes several times.
    I am building on XUbuntu 12.04 64bit - both machines have 4Gb RAM.
    I notice that “top” shows several cc1plus processes running in parallel
    each consuming over 1Gb of memory.

Try adding more swap space.

GCC goes all memory-hungry when it’s compiling some of the SWIG output
in Gnu Radio. And if pybombs is running parallel builds that will
add more pressure on VM.

–
Marcus L.
Principal Investigator
Shirleys Bay Radio Astronomy Consortium

By default pybombs runs make with the “-j4” option, allowing it to
compile
things in parallel. This typically helps the compile go quicker. I
certainly wouldnt expect the gnuradio compile to have issues like this,
but
you could edit the gnuradio recipe to force it not to use the “-j4”
option
by adding:

make {
make
}

This basically overwrites the template pybombs uses for the make
stage, which uses the “-j4” by default. It will result in a longer
compile time, and again I wouldnt expect a machine with 4GB of RAM to
have any problems, even with that option, but its something to try.

Tim