- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear all,
We have an application consisting mainly of Fortran code and some C / CPP code. We want to utilize the PGI accelerator / GPU possibilities. Furthermore there are a few legacy libraries with CPP code. Furthermore the main program is a CPP file. These legacy libraries are compiled with the Intel icpc / icc compiler (version 10.1), till now we compiled our application also with the mentioned Intel Compiler.
I'm trying to port the application and as the name mangling of the Intel icpc compiler and the PGI pgCC compiler are different it is, as far as I know, not possible (without great effort it might possibly be possible to map the both name mangling onto each other through a glue library).
So I used the Intel icpc compiler for the CPP part and the PGI pgf90 compiler for the Fortran part. Everything compiles and links and the executable starts but after a while the application hangs in the code of one of the legacy libraries (with the Intel icpc and Intel ifort compiler the application works).
Has anyone ever tried to use the Intel icpc compiler together with the PGI pgf90 compiler and found any pitfalls ? or are there any special options to be used ?
Has anyone noticed a similar behavior (application that hangs) ?
Any suggestion welcome,
Best Regards,
Albert
This message will be cross posted in the PGI and Intel forum
We have an application consisting mainly of Fortran code and some C / CPP code. We want to utilize the PGI accelerator / GPU possibilities. Furthermore there are a few legacy libraries with CPP code. Furthermore the main program is a CPP file. These legacy libraries are compiled with the Intel icpc / icc compiler (version 10.1), till now we compiled our application also with the mentioned Intel Compiler.
I'm trying to port the application and as the name mangling of the Intel icpc compiler and the PGI pgCC compiler are different it is, as far as I know, not possible (without great effort it might possibly be possible to map the both name mangling onto each other through a glue library).
So I used the Intel icpc compiler for the CPP part and the PGI pgf90 compiler for the Fortran part. Everything compiles and links and the executable starts but after a while the application hangs in the code of one of the legacy libraries (with the Intel icpc and Intel ifort compiler the application works).
Has anyone ever tried to use the Intel icpc compiler together with the PGI pgf90 compiler and found any pitfalls ? or are there any special options to be used ?
Has anyone noticed a similar behavior (application that hangs) ?
Any suggestion welcome,
Best Regards,
Albert
This message will be cross posted in the PGI and Intel forum
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
pgf90 iso_c_binding might work with icc (or icpc, restricted to "extern C" for interoperable function calls). I haven't heard of this being tested. There may be pitfalls in some pgf90 run-time requirement conflicting with Intel run-time libraries. As you say, anything involving C++ symbol mangling is likely to break cross compatibility.
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page