vip.rzg.mpg.de: Internal Compiler Error: Insufficient storage

Issue #659 closed
anonymous created an issue

I have gotten an internal compiler error at compiling formaline on vip.rzg.mpg.de.

xlc_r -g -q64 -qminimaltoc -qsuppress=1506-1108 -qlanglvl=extc99 -O2 -qmaxmem=-1 -qhot -qarch=pwr6 -qtu ne=pwr6 -qsmp=omp -c -o /u/alibeck/Cactus/configs/test-kiki/scratch/cactus-thorn-source-BLAS.o /u/alib eck/Cactus/configs/test-kiki/scratch/cactus-thorn-source-BLAS.c Out of memory in PoolArea::PoolArea(). xlc_r: 1501-230 (S) Internal compiler error; please contact your Service Representative. For more infor mation visit: http://www.ibm.com/support/docview.wss?uid=swg21110810 gmake[1]: [/u/alibeck/Cactus/configs/test-kiki/scratch/cactus-thorn-source-BLAS.o] Error 251 gmake[1]: Leaving directory `/u/alibeck/Cactus' gmake: [test-kiki] Error 2

The deeper investigation of the vip support team gave the following reason:

1506-300: (S) Insufficient storage available.

Keyword: Formaline

Comments (12)

  1. Frank Löffler
    • removed comment

    An internal compiler error is essentially always a bug in the compiler. In this particular case, it might be a good idea to contact the compiler developers and report this problem, as it should be easily reproducible. Apart from fixing a possible bug, they might know some workaround.

    All that could be done from out side is to guess what is going wrong, and to try to find a workaround by changing the way formaline creates these files. This has already been done by, e.g., splitting them up into smaller chunks. Maybe they are not small enough for this compiler. You could try to find something that works by playing with the values $items_per_line and $items_per_file in Formaline/src/util/makeblob.pl

    Although - now looking at how my Formaline files look like: are you sure you use a recent version of Formaline? I only have a thorn-BLAS.c, within scratch/Formaline/, plus a lot of thorn-BLAS-xxxx.c with xxxx being integers and containing the actual data.

    Frank

  2. Erik Schnetter
    • removed comment

    If a compiler runs out of resources (memory, CPU time, disk space), then this is reported by the operating system as segfault or similar problem, and the compiler may then output "internal error" instead of a better diagnosis.

    I don't know what "insufficient storage" means. It could be that the compiler runs out of memory -- in this case, changing -qmaxmem=-1 to -qmaxmem=100000 or a smaller number may help. If the compiler runs out of disk space, then you may have exceeded your quota, or the /tmp directory may be full. In both cases, user support will be able to help out.

  3. anonymous reporter
    • removed comment

    Compiler Flgas do not help in this case. The admins at VIP have asked IBM for help, and the answer of IBM was: set the Environment variable LDR_CNTL to the following value:

    export LDR_CNTRL='MAXDATA=0xB0000000@DSA'

    Doing this and compliling afterwards worked fine. We now need to add this to simfactory.

  4. Erik Schnetter
    • changed status to open
    • removed comment

    As I described in the chat, this is how this would be done in Simfactory:

    Index: mdb/machines/vip.ini

    --- mdb/machines/vip.ini (revision 1509) +++ mdb/machines/vip.ini (working copy) @@ -11,7 +11,7 @@

    1. Access to this machine hostname = vip.rzg.mpg.de rsynccmd = /u/eschnett/bin/rsync -envsetup = export PATH=${PATH}:/afs/ipp/rs_aix53/bin:/afs/ipp/rs_aix53/soft/gnu/bin:/afs/ipp/rs_aix53/soft/X11/bin +envsetup = export PATH="${PATH}:/afs/ipp/rs_aix53/bin:/afs/ipp/rs_aix53/soft/gnu/bin:/afs/ipp/rs_aix53/soft/X11/bin" LDR_CNTRL='MAXDATA=0xB0000000@DSA' aliaspattern = ^vip(\d\d\d)?(i)?(\.rzg\.mpg\.de)$
    1. Source tree management

    Please test this patch and confirm that it works correctly.

  5. anonymous reporter
    • removed comment

    I have already tried the following solution:

    make = env LDR_CNTRL='MAXDATA=0xB0000000@DSA' gmake -j16

    instead of:

    make = gmake -j16

    This solution works. Can we apply it?

    Best wishes

    Alexander

  6. anonymous reporter
    • removed comment

    I have changed in the machine config file

    mdb/machines/vip.ini

    the make alias. The line

    make = gmake -j16

    has been exchanged against

    make = env LDR_CNTRL='MAXDATA=0xB0000000@DSA' gmake -j16

    The solution is also available now in the trunk version.

    Using this alias, the build is working now.

  7. Log in to comment