LAMMPS_CUDA Precision

Hi,

I have a follow-up question to the one posted almost a year ago (see below).
After the successful compilation, I keep receiving these errors and I
don't quite understand why I'm getting them. I did add -DFFT_CUFFT to my
LAMMPS Makefile, everything else was not changed (I was not playing with
- -DX_PRECISION etc...)

The suggested solution "clean-make-make" did not work for me.
The warnings wouldn't bother me, but LAMMPS crashes afterwards (it never
gets passed the 'upload data' line and takes up all the memory (>60gb)).

Thanks for any help!
konstantin

PS. I'm trying to 'test' a simple LJ system on the GPU. The GPU package
works fine, btw.

(git-svn-id: svn://svn.icms.temple.edu/lammps-ro/[email protected]...
f3b2605a-c512-4ea7-a41b-209d697bcdaa)

LAMMPS (4 Jul 2012)
# Using LAMMPS_CUDA

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: Global Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: X Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: V Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: F Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: PPPM Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: FFT Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: cufft: cuda 0 cpp 1

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: arch: cuda 0 cpp 20

USER-CUDA mode is enabled (lammps.cpp:396)
# CUDA: Activate GPU
...

- ---
Hi

in principal this should not happen (this is a really helpfull answer
isnt it?). What you can do is go to lib/cuda and do a "make clean"
followed by "make -j 8".
Then go to the src directory and delete the files in "Obj_MACHINENAME"
and compile again with "make MACHINENAME -j 8".
Let me know if that works.

Cheers
Christian

- -------- Original-Nachricht --------

Datum: Tue, 6 Sep 2011 13:51:02 -0400
Von: Akila Gothandaraman <[email protected]...>
An: [email protected]
Betreff: [lammps-users] LAMMPS_CUDA Precision

Hello,

I installed the August 25, 2011 version of LAMMPS (all packages) on
our cluster. When I run LAMMPS however, I get these warnings about the
difference in precision of the cuda vs. cpp code.

LAMMPS (25 Aug 2011)
# Using LAMMPS_CUDA

  # CUDA WARNING: Compile Settings of cuda and cpp code differ!
  # CUDA WARNING: Global Precision: cuda 0 cpp 2

  # CUDA WARNING: Compile Settings of cuda and cpp code differ!
  # CUDA WARNING: X Precision: cuda 0 cpp 2
....

I have set the precision to double when I built the libraries in the
Makefiles under user-cuda and gpu. Not sure what "0" precision means.
Is there a setting
within the LAMMPS /src directory that I might have overlooked?

Thanks
Akila

- --
Konstantin Koschke
Max Planck Institute for Polymer Research
Theory Group
PO Box 3148
D 55021 Mainz, Germany

phone: +49 6131 379 481
email: [email protected]...

Christian can likely answer this.

Steve

Hi

that is weird someone else has the same problem right now. And I am still puzzled as to how that happens. The issue is that main LAMMPS (in lammps/src) gets compiled with different precision settings than the lammps/lib/cuda. This means that copies from host to GPU corrupt data, because one side thinks it gets 64 bit data while the other side thinks it gets 32 bit data. For some reason the settings from the cudalib are not propagating through.

Could you send me your lib/cuda/Makefile.lammps, the src/MAKE/Makefile.* you are using, the src/Makefile.package and the src/Makefile.package.settings?

Thanks
Christian

-------- Original-Nachricht --------

Hi,

thanks to Christian's hint in a private conversation, I have
successfully compiled LAMMPS.

The reason for the warnings (and possible the cause for the crash) was
an old Makefile (I kept copying old, adjusted Makefiles to newer LAMMPS
versions).

The solution is then obvious: take a new Makefile (e.g.
Makefile.openmpi) and adjust some paths.

Thanks again!
konstantin

Hi

that is weird someone else has the same problem right now. And I am still puzzled as to how that happens. The issue is that main LAMMPS (in lammps/src) gets compiled with different precision settings than the lammps/lib/cuda. This means that copies from host to GPU corrupt data, because one side thinks it gets 64 bit data while the other side thinks it gets 32 bit data. For some reason the settings from the cudalib are not propagating through.

Could you send me your lib/cuda/Makefile.lammps, the src/MAKE/Makefile.* you are using, the src/Makefile.package and the src/Makefile.package.settings?

Thanks
Christian

-------- Original-Nachricht --------

Datum: Thu, 19 Jul 2012 08:46:02 -0600
Von: Steve Plimpton <[email protected]>
An: Konstantin Koschke <[email protected]...>, Christian Trott <[email protected]...>
CC: [email protected]
Betreff: Re: [lammps-users] LAMMPS_CUDA Precision

Christian can likely answer this.

Steve

Hi,

I have a follow-up question to the one posted almost a year ago (see

below).

After the successful compilation, I keep receiving these errors and I
don't quite understand why I'm getting them. I did add -DFFT_CUFFT to my
LAMMPS Makefile, everything else was not changed (I was not playing with
-DX_PRECISION etc...)

The suggested solution "clean-make-make" did not work for me.
The warnings wouldn't bother me, but LAMMPS crashes afterwards (it never
gets passed the 'upload data' line and takes up all the memory (>60gb)).

Thanks for any help!
konstantin

PS. I'm trying to 'test' a simple LJ system on the GPU. The GPU package
works fine, btw.

(git-svn-id: svn://svn.icms.temple.edu/lammps-ro/[email protected]...
f3b2605a-c512-4ea7-a41b-209d697bcdaa)

LAMMPS (4 Jul 2012)
# Using LAMMPS_CUDA

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: Global Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: X Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: V Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: F Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: PPPM Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: FFT Precision: cuda 0 cpp 2

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: cufft: cuda 0 cpp 1

# CUDA WARNING: Compile Settings of cuda and cpp code differ!
# CUDA WARNING: arch: cuda 0 cpp 20

USER-CUDA mode is enabled (lammps.cpp:396)
# CUDA: Activate GPU
...

---
From: "Christian Trott" <[email protected]...>
Date: Tue, 06 Sep 2011 21:39:52 +0200
Hi

in principal this should not happen (this is a really helpfull answer
isnt it?). What you can do is go to lib/cuda and do a "make clean"
followed by "make -j 8".
Then go to the src directory and delete the files in "Obj_MACHINENAME"
and compile again with "make MACHINENAME -j 8".
Let me know if that works.

Cheers
Christian

-------- Original-Nachricht --------

Datum: Tue, 6 Sep 2011 13:51:02 -0400
Von: Akila Gothandaraman <[email protected]...>
An: [email protected]
Betreff: [lammps-users] LAMMPS_CUDA Precision

Hello,

I installed the August 25, 2011 version of LAMMPS (all packages) on
our cluster. When I run LAMMPS however, I get these warnings about the
difference in precision of the cuda vs. cpp code.

LAMMPS (25 Aug 2011)
# Using LAMMPS_CUDA

  # CUDA WARNING: Compile Settings of cuda and cpp code differ!
  # CUDA WARNING: Global Precision: cuda 0 cpp 2

  # CUDA WARNING: Compile Settings of cuda and cpp code differ!
  # CUDA WARNING: X Precision: cuda 0 cpp 2
....

I have set the precision to double when I built the libraries in the
Makefiles under user-cuda and gpu. Not sure what "0" precision means.
Is there a setting
within the LAMMPS /src directory that I might have overlooked?

Thanks
Akila

------------------------------------------------------------------------------

Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond.

Discussions

will include endpoint security, mobile security and the latest in

malware

threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/