Building/testing LAMMPs with Kokkos for Xeon Phi?

Hi Paul,

Note that the Kokkos package is under developement and not all the styles and fixes are yet supported in the kokkos package. Currently kookos package supports:

The colloid example uses the styles that are not yet supported by the kokkos package. So the error could be due to unsupported styles and fixes.

Did you try running LJ example in the kokkos directory? Since, you were able to successfully build kokkos with MIC, you should be able to run LJ example.

I hope that helps.




I’m interested to try out the LAMMPS (29Aug2014) with Kokkos functionality targeting Xeon Phi. Does anyone have experience with appropriate Makefile settings to build LAMMPS in this case? For example, in the instructions here: it states:

Intel Xeon Phi:

cd lammps/src

make yes-kokkos

make g++ OMP=yes MIC=yes

which if I understand correctly would use the Makefile included in the source distribution at src/MAKE/ Makefile.g++?

I’ve been trying to make LAMMPS with Kokkos for use on Xeon Phi with variations on the src/MAKE/ (using Intel Compiler 14.0.3, Intel MPI, Intel MPSS 3.3). While I am getting a successful build, when I try to run for example the colloid example included with LAMMPS:

mpirun -hosts rx350-1-mic0 -n 4 -env LD_LIBRARY_PATH $MIC_LD_LIBRARY_PATH …/src/lmp_intel_intelmpi -k on t 1 -sf kk < in.colloid > colloid_test.log 2>&1

(and I’ve tried different parameters for –n and –k on t, e.g 2/1 2/2 etc), I always get the following crash at runtime immediately after the LAMMPS processes start on the Xeon Phi

$ cat colloid_test.log

LAMMPS (29 Aug 2014)

KOKKOS mode is enabled (…/lammps.cpp:469)

using 1 OpenMP thread(s) per MPI task

*** glibc detected *** …/src/lmp_intel_intelmpi: realloc(): invalid old size: 0x0000000001b0fc00 ***

*** glibc detected *** …/src/lmp_intel_intelmpi: realloc(): invalid old size: 0x0000000001f4c980 ***

*** glibc detected *** …/src/lmp_intel_intelmpi: realloc(): invalid old size: 0x0000000002fff980 ***

*** glibc detected *** …/src/lmp_intel_intelmpi: realloc(): invalid old size: 0x00000000021ab980 ***

Some of the compiler options in the standard src/MAKE/ are:

CC = mpiicpc -openmp -DLAMMPS_MEMALIGN=64 -no-offload

CCFLAGS = -O3 -xHost -fno-alias -ansi-alias -restrict -override-limits



LINK = mpiicpc -openmp

LINKFLAGS = -O3 -xHost

-xHost obviously is not compatible with –mmic, what about the other options here? Or is the problem possibly elsewhere?

Best Regards,