Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Trifud
Beginner
57 Views

Memory leak in ICC 17?

Today I decided to try ICC 2017 Update 1. Halfway into my project the build computer seemed to hang up. I figured out that icpc allocates all RAM (24 GB) even when running with one thread. I restarted the computer and tried again - still the same issue. The code compiles just fine with ICC 2013. I am running on Debian 8. When I killed the process, the following was printed on the command line:

*** Error in `/opt/intel/compilers_and_libraries_2017.1.132/linux/bin/intel64/icpc': double free or corruption (!prev): 0x0000000002001b20 ***

Has anybody else had this issue?

0 Kudos
6 Replies
Judith_W_Intel
Employee
57 Views

 

That doesn't sound like a memory leak, it sounds like a endless recursion or infinite loop in the compiler. Can you please preprocess the file (using the -P or -E options) and then attach the preprocessed file along with the command line you were executing when this happened?

thanks

Judy

Trifud
Beginner
57 Views

Unfortunately I cannot attach any source or binary code because this is against the rules of my organization. I figured out that the issue was in optimization. I get this problem with O2 but it works fine with O0. This affects three files (out of several thousand) in my project.

Trifud
Beginner
57 Views

There also are issues with ifort. I just got this message:

ifort: error #10106: Fatal error in /opt/intel/compilers_and_libraries_2017.1.132/linux/bin/intel64/fortcom, terminated by kill signal

It seems that the 2017 version of the Intel compilers is too unstable to be used in production.

Judith_W_Intel
Employee
57 Views

 

Two suggestions - one is to file an issue with Intel premier support - that way you could not have to make the code public.

A second suggestion is you could try the "creduce" tool to get the problematic source code reduced to a small test case (which you could presumably then share).

creduce is described here:

https://embed.cs.utah.edu/creduce/

 

 

 

jimdempseyatthecove
Black Belt
57 Views

You can try manipulating interprocedural optimizations. The default for -O2 is -ipo (multi-file)

Try:   -ip -no-ipo     (intra-file optimizations, but not inter-file optimizations)

If that fails try: -no-ip -no-ipo

Jim Dempsey

Trifud
Beginner
57 Views

Thanks for the suggestions! Unfortunately I don't have the time to fight with this problem. I went for ICC 2016.4 instead. It works better.

Reply