Intel® C++ Compiler
Support and discussions for creating C++ code that runs on platforms based on Intel® processors.
7744 Discussions

Crashing linker when compiling on Altix with -ipo

brlcad
Beginner
253 Views
I've been testing out various compilation optimization options provided by icc on the BRL-CAD software package, compiling on an Altix (Itanium 2's). When I attempt to use -ipo at least in conjunction with -O3 or -O2, the linker seems to segfault. I haven't tested other combinations yet.

Compilation of all the object files for a library seem to proceed without a problem. When the object files are linked together, the crash seems to occur:

/bin/sh ../../../libtool --mode=link /opt/intel/cc/9.0/bin/icc -O3 -ipo -pipe -fno-strict-aliasing -fno-common -g -L/opt/intel/cc/9.0/lib -L/usr/X11R6/lib -L/usr/local/lib -pipe -fno-strict-aliasing -fno-common -Wnewline-eof -g -o libutahrle.la -rpath /usr/brlcad/lib -version-info 19:1 [[libtool object files here]] -lm
rm -fr .libs/libutahrle.la .libs/libutahrle.* .libs/libutahrle.*
/opt/intel/cc/9.0/bin/icc -shared [[libtool object files here]] -L/opt/intel/cc/9.0/lib -L/usr/X11R6/lib -L/usr/local/lib -lm -Wl,-soname -Wl,libutahrle.so.19 -o .libs/libutahrle.so.19.0.1
icc: error: Fatal error in /opt/intel/cc/9.0/bin/mcpcom, terminated by segmentation violation
icc: error: problem during multi-file optimization compilation (code 1)

This seems to occur for any library I attempt to link. Any ideas?
0 Kudos
5 Replies
mario__Intel_
Beginner
253 Views
Hi,

which Intel compiler version do you use ? What are the limits on your machine. The ipo process is quite memory intensive.

Regards

-- Mario
brlcad
Beginner
253 Views
$ icc --version
icc (ICC) 9.0 20050430

$ hinv | grep mem
Main memory size: 22.79 Gb

$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 46972
virtual memory (kbytes, -v) unlimited

$ uname -a
Linux xxx.xxx.xxx.xxx 2.4.21-sgi306rp32 #1 SMP Wed Jan 4 16:52:46 PST 2006 ia64 ia64 ia64 GNU/Linux
brlcad
Beginner
253 Views
As a follow up, I get the same results using only -ipo on for CFLAGS, i.e. the crash does not seem to be related to optimization options or other flags being used.

I also tested with the stack size set to unlimited and I get the same results.

Similarly, I get the same results if I simply try to link object files compiled with -ipo, without using -ipo on the link line:

/bin/sh ../../../libtool --mode=link icc -o libutahrle.la -rpath /usr/brlcad/lib Runput.lo buildmap.lo cmd_name.lo colorquant.lo dither.lo float_to_exp.lo hilbert.lo inv_cmap.lo rle_addhist.lo rle_cp.lo rle_error.lo rle_getcom.lo rle_getraw.lo rle_getrow.lo rle_getskip.lo rle_global.lo rle_hdr.lo rle_open_f.lo rle_putcom.lo rle_putraw.lo rle_putrow.lo rle_raw_alc.lo rle_rawrow.lo rle_row_alc.lo scanargs.lo vaxshort.lo

rm -fr .libs/libutahrle.la .libs/libutahrle.* .libs/libutahrle.*

icc -shared Runput.lo buildmap.lo cmd_name.lo colorquant.lo dither.lo float_to_exp.lo hilbert.lo inv_cmap.lo rle_addhist.lo rle_cp.lo rle_error.lo rle_getcom.lo rle_getraw.lo rle_getrow.lo rle_getskip.lo rle_global.lo rle_hdr.lo rle_open_f.lo rle_putcom.lo rle_putraw.lo rle_putrow.lo rle_raw_alc.lo rle_rawrow.lo rle_row_alc.lo scanargs.lo vaxshort.lo -Wl,-soname -Wl,libutahrle.so.19 -o .libs/libutahrle.so.19.0.1
icc: error: Fatal error in /opt/intel/cc/9.0/bin/mcpcom, terminated by segmentation violation
icc: error: problem during multi-file optimization compilation (code 1)

Message Edited by brlcad on 03-28-200612:56 PM

mario__Intel_
Beginner
253 Views
Hi,

I guess we have a problem here and probably take it offline. Any further investigation would require to look or modify the compile/build cycle.

Can you by any chance submit the problem to premier ?
brlcad
Beginner
253 Views
I'm not sure without investigating our license in more detail. I'll get in touch with folks locally to see what I can find out. Thanks for your assistance.
Reply