User Tools

Site Tools


faq:hint_insufficiently_exploiting_cpu_extensions

HINT: Compiler target flags insufficiently exploiting the extensions of this CPU model.

When running CP2K you may get the following HINT in the output:

HINT in environment.F:804 The compiler target flags used to build this 
binary are insufficiently exploiting the extensions which are available 
for this CPU model.

This means that the CPU running this CP2K executables has additional instructions (like AVX, etc.) which could be exploited to make small areas of the code run faster, but the compiler did not build the necessary code to do so when this CP2K executable was compiled from source.

If you are using a CP2K executable provided by your Linux distribution or the pre-built executable provided by us, then the only way around is to build CP2K from source yourself.

If you are building CP2K from source already, here is a checklist:

  • All compilers: you are already using something like -march=native or -xHost to have the compiler auto-detect the CPU and enable flags automatically but you still see this HINT, then this likely means that the CPU in the system you are building CP2K on has a smaller instruction set than the one running CP2K. To remedy the issue you have to use specific architecture flags for your compiler (consult your compiler documentation) instead of the auto-detection. This could mean that the final executable might not run on the build system anymore, but only on the target system.
  • Intel Compiler: Based on their documentation it seems that the Intel compiler only enables support for SSE2 by default. Check the documentation to see which flags you should be adding for your target CPU or add -xHost if your build and target hosts are the same (see point above).
  • GNU Compiler: Also the GNU compilers emit by default (independently of the optimization level) only SSE2 instructions at most. Use either an appropriate -march=… flag or -march=native if your build and target hosts are the same (see first point).
  • Libraries: the same points apply to third-party libraries used by CP2K.
faq/hint_insufficiently_exploiting_cpu_extensions.txt · Last modified: 2019/05/10 08:39 by tmueller