From: Giacomo Fiorin (giacomo.fiorin_at_gmail.com)
Date: Thu Oct 26 2017 - 13:56:26 CDT
Hi Florian, since you refer to having compiled charm++ as well, did you use
the same Intel version for both Charm++ and NAMD? Mixing versions might
work, but it's certainly safer not to.
The error says that it's not able to locate the function
__builtin_ia32_loadupd, which is a compiler builtin. Without knowing more,
this points to a mismatch between the generated code and the compiler that
is supposed to link it (which is just wrapped around by charmc).
Try also GCC, if you can. You may lose a bit on those sections of the code
that haven't been flagged explicitly for vectorization, but the most
compute-intensive parts will be still taken care of.
On Thu, Oct 26, 2017 at 1:34 PM, Florian Blanc <blanc.flori_at_gmail.com>
> Dear Victor and Josh,
> Thank you for your replies. As per Victor's advice I commented out the
> "simd assert" line in the Settle.C file. As expected, the "loop was not
> vectorized" error does not appear anymore during compilation. However,
> compilation is still unsuccessful as I get a "Fatal Error by charmc" at the
> very last stage of NAMD compilation. Before this, several "undefined
> reference to `__builtin_ia32_loadupd' " (or similar) are printed, referring
> to Settle.C and also to ComputeNonbondedTabEnergies.C,
> ComputeNonbondedPProf.C, ComputeNonbondedLES.C, ComputeNonbondedTI.C,
> ComputeNonbondedGo.C, ComputeNonbondedFEP.C, ComputeNonbondedStd.C and
> Although it is not a KNL system, I also tried several versions of the
> compiler as suggested by Josh (2016 and 2014) but got the same error. I
> have no idea what's going on. I don't know if the problem can come from an
> imperfect compilation of charmrun, but if so note that the compilation and
> run of the "megatest" program for charmrun were successful. Any leads ?
> Thanks again,
> On 10/25/2017 11:01 PM, Vermaas, Joshua wrote:
>> This wouldn't happen to be a KNL system, would it? Here is some text from
>> the release notes that went along with 2.12:
>> There appears to be a bug in the Intel 17.0 compiler that breaks the
>> non-KNL-optimized NAMD kernels (used for alchemical free energy, etc.)
>> on KNL. Therefore the Intel 16.0 compilers are recommended on KNL.
>> On 10/25/2017 02:31 PM, Florian Blanc wrote:
>> Dear NAMD users,
>> I am trying to compile the most recent (nightly of 25th of October)
>> version of NAMD on the French supercomputer Curie using the Intel Compiler
>> version 17.0.2; I want a verbs-linux-x86_64 build. Although the compilation
>> of charm++ works fine, the following error interrupts the compilation of
>> src/Settle.C(332): (col. 3) error #13378: loop was not vectorized with
>> "simd assert"
>> compilation aborted for src/Settle.C (code 1)
>> I find only one reference to this error on the Internet, on the Intel
>> but no further information is given. Does anyone know this problem and a
>> way to solve it? I can provide more details on the architecture and/or the
>> compilation options I used if it is relevant.
>> Thank you very much in advance,
>> Florian Blanc
-- Giacomo Fiorin Associate Professor of Research, Temple University, Philadelphia, PA Contractor, National Institutes of Health, Bethesda, MD http://goo.gl/Q3TBQU https://github.com/giacomofiorin
This archive was generated by hypermail 2.1.6 : Sun Dec 31 2017 - 23:21:44 CST