Mostrando postagens com marcador hd7970. Mostrar todas as postagens
Mostrando postagens com marcador hd7970. Mostrar todas as postagens

sexta-feira, 25 de janeiro de 2013

Benchmark on GPU HD7970 / LAMMPS

AMD FX-8150@4.086GHz / GPU XFX HD7970 GHz edition / MPICH 3.0.1 / Open64 4.5.2 (AMD) / APP SDK 2.8 / LAMMPS 20130121 (compiled with -O3)

Results for Rhodopsin
On the FX-8150
Single core 45.9495 seconds
4 cores 11.94 seconds
8 cores 7.06722 seconds

On the GPU HD7970 GHz edition
1 proc 4.8 seconds
2 procs 3.67 seconds

Results with FirePro3D V8800 and Tesla C2050
https://sites.google.com/site/akohlmey/news-and-announcements/gpuacceleratedlammpsonamdgpus

Results for EAM

1 procs
mpirun -n 1 ./lmp_mpich  -sf gpu -c off -v g 1 -v x 80 -v y 80 -v z 80 -v t 100 < in.eam.gpu
--------------------------------------------------------------------------
GPU 0: Tahiti, 256 cores, 2.9 GB, 1.1 GHZ (Double Precision)
--------------------------------------------------------------------------

Initializing GPU and compiling on process 0...Done.
Initializing GPU 0 on core 0...Done.

Setting up run ...
Memory usage per processor = 426.905 Mbytes
Step Temp E_pair E_mol TotEng Press
       0         1600     -7249920            0   -6826360.6    18704.149
      50    780.81547   -7031660.9            0   -6824959.8    52291.364
     100    798.21786   -7036295.3            0   -6824987.4    51479.467
Loop time of 27.893 on 1 procs for 100 steps with 2048000 atoms


2 procs

mpirun -n 2 ./lmp_mpich  -sf gpu -c off -v g 1 -v x 80 -v y 80 -v z 80 -v t 100 < in.eam.gpu
--------------------------------------------------------------------------
GPU 0: Tahiti, 256 cores, 2.9 GB, 1.1 GHZ (Double Precision)
--------------------------------------------------------------------------

Initializing GPU and compiling on process 0...Done.
Initializing GPU 0 on core 0...Done.
Initializing GPU 0 on core 1...Done.

Setting up run ...
Memory usage per processor = 225.757 Mbytes
Step Temp E_pair E_mol TotEng Press
       0         1600     -7249920            0   -6826360.6    18704.149
      50    780.81547   -7031660.9            0   -6824959.8    52291.364
     100    798.21786   -7036295.3            0   -6824987.4    51479.467
Loop time of 22.4219 on 2 procs for 100 steps with 2048000 atoms



mpirun -n 1 ./lmp_cuda  -sf cuda -v g 2 -v x 80 -v y 80 -v z 80 -v t 100 < in.eam.cuda

LAMMPS (21 Jan 2013)
# Using LAMMPS_CUDA
USER-CUDA mode is enabled (lammps.cpp:393)
# CUDA: Activate GPU
# Using device 0: GeForce GTX 580
Lattice spacing in x,y,z = 3.615 3.615 3.615
Created orthogonal box = (0 0 0) to (289.2 289.2 289.2)
  1 by 1 by 1 MPI processor grid
Created 2048000 atoms
# CUDA: VerletCuda::setup: Allocate memory on device for maximum of 2050000 atoms...
# CUDA: Using precision: Global: 8 X: 8 V: 8 F: 8 PPPM: 8
Setting up run ...
# CUDA: VerletCuda::setup: Upload data...
# CUDA: Total Device Memory useage post setup: 1314.117188 MB
Memory usage per processor = 416.017 Mbytes
Step Temp E_pair E_mol TotEng Press
       0         1600     -7249920            0   -6826360.6    18704.149
      50    780.81547   -7031660.9            0   -6824959.8    52291.364
     100    798.21786   -7036295.3            0   -6824987.4    51479.467
Loop time of 20.0248 on 1 procs for 100 steps with 2048000 atoms
 




domingo, 2 de dezembro de 2012

LAMMPS no AMD HD7970

Uma simulação com mais de 2 milhões de atomos usando o potencial EAM em uma placa de vídeo da XFX (AMD HD7970 GHz edition com 3GB), tudo em dupla precisão usando LAMMPS com pacote GPU.
(double precision/LAMMPS/AMD SDK APP 2.7/fglrx 9.01.8/Slackware64-current)


--------------------------------------------------------------------------
RESULTADOS
--------------------------------------------------------------------------
--------------------------------------------------------------------------
Na GPU HD7079 1.05GHz
--------------------------------------------------------------------------
--------------------------------------------------------------------------
- Using GPGPU acceleration for eam:
-  with 1 proc(s) per device.
-  with OpenCL Parameters for: GENERIC_OCL
--------------------------------------------------------------------------
GPU 0: Tahiti, 256 cores, 2.9 GB, 1.1 GHZ (Double Precision)
GPU 1: AMD FX(tm)-8150 Eight-Core Processor           , 8 cores, 3.6 GHZ (Double Precision)
--------------------------------------------------------------------------

Initializing GPU and compiling on process 0...Done.
Initializing GPUs 0-1 on core 0...Done.

Setting up run ...
Memory usage per processor = 422.869 Mbytes
Step Temp E_pair E_mol TotEng Press
       0         1600     -7159296            0   -6741031.1    18704.149
      50    780.71972   -6943740.2            0   -6739647.9    52292.948
     100    798.21531   -6948340.9            0     -6739675    51478.838
Loop time of 29.6983 on 1 procs for 100 steps with 2022400 atoms

--------------------------------------------------------------------------
Na CPU FX-8150 com over de 4.086GHz
--------------------------------------------------------------------------

  2 by 2 by 2 MPI processor grid
Created 2022400 atoms
Setting up run ...
Memory usage per processor = 96.6497 Mbytes
Step Temp E_pair E_mol TotEng Press
       0         1600     -7159296            0   -6741031.1    18704.149
      50    780.71972   -6943740.2            0   -6739647.9    52292.948
     100    798.21531   -6948340.9            0     -6739675    51478.838
Loop time of 93.0408 on 8 procs for 100 steps with 2022400 atoms


--------------------------------------------------------------------------
AMD SDK APP 2.7 PATCH
--------------------------------------------------------------------------
--- ./make/openclsdkdefs.mk-orig        2012-05-14 04:43:34.000000000 -0300
+++ ./make/openclsdkdefs.mk     2012-11-30 20:41:05.275285082 -0200
@@ -230,7 +230,7 @@
 ifdef MINGW
   LDFLAGS           += -L/usr/X11R6/lib
 else
-  LDFLAGS           += -lpthread -ldl -L/usr/X11R6/lib
+  LDFLAGS           += -lpthread -ldl -L/usr/X11R6/lib64 -lX11
 endif
   LD_LIBDIR_FLAG    := -L
   LD_SHARED_FLAG    := -shared  
--- ./samples/opencl/SDKUtil/include/SDKCommon.hpp-orig 2012-05-14 04:43:34.000000000 -0300
+++ ./samples/opencl/SDKUtil/include/SDKCommon.hpp      2012-11-30 14:38:11.671185385 -0200
@@ -18,6 +18,7 @@
 #include

 #include

 #include

+#include


 #include

 

--------------------------------------------------------------------------
GERYON - ocl_timer.h
--------------------------------------------------------------------------
+#define CL_USE_DEPRECATED_OPENCL_1_1_APIS
 #include "ocl_macros.h"
 #include "ocl_device.h"