Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

Intel C++ 16.0 Error : Unable to Obtain mapped memory (see pch_diag.txt)

Nikhil_D_1
Beginner
1,521 Views

We just upgraded to Intel Parallel Studio XE 2016 Update 2 Professional Edition- C++ for Windows version. OS on all machines is Win7- 64  SP1 Enterprise version, 8GB RAM, Visual Studio 2012 Update 4. In Initial tests we didn't see any issues on multiple machines. After rolling out to a larger audience we see compilation failures on some machines that report the "Unable to Obtain mapped memory error". We've tried it with precompiled headers off and on and the error persists. All intermediate files in the build folders have been deleted to ensure clean builds. This forum lists this error in 2009 and 2012 but no reports in last few years.

The Intel website does have a listing for this https://software.intel.com/en-us/articles/unable-to-obtain-mapped-memory from 2012 but also lists that the provided "option is internal and could be changed at any time". Hope/assume  the wIndows ASLR issue is fixed by 2016.

Any ideas ?

pch_diag.txt----

=== Dumping Virtual Address Space Info ===
Page size: 00001000
Minimum application address: 00010000
Maximum application address: FFFEFFFF
Base Address: 00036000 Region Size: 0000A000
Base Address: 00041000 Region Size: 0000F000
Base Address: 00054000 Region Size: 0000C000
Base Address: 00061000 Region Size: 0000F000
Base Address: 000B1000 Region Size: 0000F000
Base Address: 000C1000 Region Size: 0000F000
Base Address: 00937000 Region Size: 00009000
Base Address: 00941000 Region Size: 0000F000
Base Address: 00951000 Region Size: 0000F000
Base Address: 009E1000 Region Size: 0000F000
Base Address: 009F1000 Region Size: 0000F000
Base Address: 00A01000 Region Size: 0000F000
Base Address: 00A21000 Region Size: 0000F000
Base Address: 00A31000 Region Size: 0000F000
Base Address: 00A41000 Region Size: 0001F000
Base Address: 00CF8000 Region Size: 00008000
Base Address: 00D07000 Region Size: 00009000
Base Address: 00D12000 Region Size: 0000E000
Base Address: 00D31000 Region Size: 0000F000
Base Address: 00D51000 Region Size: 0000F000
Base Address: 00D71000 Region Size: 0000F000
Base Address: 00D90000 Region Size: 00010000
Base Address: 00DC1000 Region Size: 0001F000
Base Address: 00E51000 Region Size: 0001F000
Base Address: 01001000 Region Size: 0000F000
Base Address: 01110000 Region Size: 000C0000
Base Address: 034C7000 Region Size: 00009000
Base Address: 034D1000 Region Size: 0000F000
Base Address: 04BE0000 Region Size: 00030000
Base Address: 04C50000 Region Size: 00050000
Base Address: 052B3000 Region Size: 0005D000
Base Address: 05C10000 Region Size: 000D0000
Base Address: 064E0000 Region Size: 000D0000
Base Address: 066F0000 Region Size: 000E0000
Base Address: 069E1000 Region Size: 0000F000
Base Address: 06FF0000 Region Size: 08CE0000
Base Address: 0FD80000 Region Size: 20280000
Base Address: 37598000 Region Size: 2B7A8000
Base Address: 62D5B000 Region Size: 04525000
Base Address: 672DF000 Region Size: 0A9B1000
Base Address: 71CA5000 Region Size: 0000B000
Base Address: 71CEF000 Region Size: 00001000
Base Address: 71D2F000 Region Size: 00351000
Base Address: 72088000 Region Size: 00008000
Base Address: 720EC000 Region Size: 00004000
Base Address: 7212F000 Region Size: 00051000
Base Address: 7226B000 Region Size: 00345000
Base Address: 725FC000 Region Size: 00184000
Base Address: 727AD000 Region Size: 02213000
Base Address: 749CC000 Region Size: 00004000
Base Address: 74A30000 Region Size: 001B0000
Base Address: 74BEA000 Region Size: 00396000
Base Address: 75C5B000 Region Size: 00005000
Base Address: 75C65000 Region Size: 0000B000
Base Address: 75CB7000 Region Size: 00089000
Base Address: 75DDD000 Region Size: 00093000
Base Address: 75F3C000 Region Size: 00074000
Base Address: 75FC9000 Region Size: 00007000
Base Address: 76027000 Region Size: 00219000
Base Address: 76450000 Region Size: 00010000
Base Address: 76501000 Region Size: 0006F000
Base Address: 765FF000 Region Size: 00041000
Base Address: 766A0000 Region Size: 00010000
Base Address: 7680C000 Region Size: 00244000
Base Address: 76B40000 Region Size: 00090000
Base Address: 76C7C000 Region Size: 00004000
Base Address: 76D7A000 Region Size: 00006000
Base Address: 76E9F000 Region Size: 00001000
Base Address: 77049000 Region Size: 00037000
Base Address: 77200000 Region Size: 07DC0000
Base Address: 7EFC1000 Region Size: 0000F000
Base Address: 7EFD1000 Region Size: 0000F000
Base Address: 7FFF0000 Region Size: 7FFC0000
Base Address: FFFD3000 Region Size: 00002000
Largest Region: 7FFF0000 size: 7FFC0000

0 Kudos
10 Replies
Kittur_G_Intel
Employee
1,521 Views

Hi Nikhil,
Unfortunately, I am not able to reproduce this issue on my systems. Your input is correct and I am awaiting a response from the product team to get their feedback on this issue. Please stay tuned and will get back to you soon.

Kittur

0 Kudos
Kittur_G_Intel
Employee
1,521 Views

Hi Nikhil,
What I heard from the dev team is that the KB article still persists and the options (internal) provided in that article is still current as of the latest release as well.  There is no “fix” for this issue with our current compiler architecture.  Fortunately it is "extremely rare" and the internal option indicated in the article should work.

Also, I don't understand what the issue could be as you mention it happens without precompiled headers. That message is impossible to be generated without the precompiled headers, FYI.

So, I suggest you to attach a reproducer (prj solution) I can try on an equivalent system but not sure I would be able to reproduce since you mention it worked on a few other systems as well.  But, I confirmed that the KB article still is current for such a problem.

Thanks,
Kittur

0 Kudos
Nikhil_D_1
Beginner
1,521 Views

Thanks. I checked with the team and not using precompiled headers does work. Mistake on our side.  Will go by the KB document. I have a little over 25% of my team being affected by this issue. Doesn't appear to follow any pattern.

 

0 Kudos
Nikhil_D_1
Beginner
1,521 Views

Any chance given the virtual memory dump above Intel could send me the preferrred address. Using /Qoption,cpp,--pch_control=20000000  doesnt work and neither does any of the addresses we tried using the computation described in the article.

0 Kudos
Kittur_G_Intel
Employee
1,521 Views

Great, thanks for letting me know that it works now without the PCH.  If you bump into a scenario like this please don't hesitate to let us know. Appreciate your patience through this and for keeping me updated as well.

Kittur

0 Kudos
Nikhil_D_1
Beginner
1,521 Views

Are there any plans to fix this especially as Visual Studio handles this while Intel compiler doesn't ? We have no problems with VC++ compiler and PCH really make the diferrence in compile time for us

0 Kudos
Anoop_M_Intel
Employee
1,521 Views

Hi Nikhil,

Let me start a private thread with you where i can get a testcase from you to reproduce this problem on my end. I would expect ASLR to affect both Intel and Visual Studio Compiler equally. 

Thanks and Regards
Anoop

0 Kudos
Bastian_S_
Beginner
1,521 Views

This error is getting really annoying. Since last VisualStudio update, i receive this error in even more projects. Using the compiler options does not work. Only possible solutions are deactivating precompiled headers or not using Intel compiler. Both solution are not appropriate.

0 Kudos
Dietrich_S_
Beginner
1,521 Views

I have the same Issuestill with ICC 2016V4 nad MSVS2015 - How it can be solved ?
 

0 Kudos
Nikhil_D_1
Beginner
1,521 Views

The issue continues in Intel2017 Update 3 and MSVC2015 on  Win7 machine. Builds on a Win10 box today but might now work tomorrow.

Does Intel plan to have a fix for this ? Find it hard to see how Intel is selling a compiler that doesn't have PCH support/ have any caveat on the product page when you buy an expensive piece of software

0 Kudos
Reply