Skip to content
This repository was archived by the owner on May 28, 2018. It is now read-only.

Commit db710d1

Browse files
committed
Updates and clarification for minimum requirements
1 parent 508d795 commit db710d1

File tree

2 files changed

+12
-114
lines changed

2 files changed

+12
-114
lines changed

README

+1-109
Original file line numberDiff line numberDiff line change
@@ -17,112 +17,4 @@ DISCLAIMER for details. This README presents an introduction to compiling,
1717
installing, and using QE-GPU.
1818

1919

20-
* * * * *
21-
22-
!!! THIS VERSION IS COMPATIBLE ONLY WITH QE 5.3 AND FORWARD !!!
23-
24-
!!! QE-GPU NOW FOLLOWS QUANTUM ESPRESSO RELEASE ROADMAP !!!
25-
26-
* * * * *
27-
28-
How to compile
29-
--------------
30-
31-
1. Copy QE-GPU in espresso directory
32-
33-
Move to the espresso root directory, uncompress the archive
34-
$ tar zxvf QE-GPU-<TAG-NAME>.tar.gz
35-
36-
and create a symbolic link with the name GPU
37-
$ ln -s QE-GPU-<TAG-NAME> GPU
38-
39-
Replace <TAG-GPU> with the corred TAG name/id
40-
41-
42-
2. Run QE-GPU configure
43-
44-
The QE-GPU configure is located in the GPU directory. An example of serial
45-
configuration is the following:
46-
47-
$ cd GPU
48-
$ ./configure --disable-parallel --enable-openmp \
49-
--enable-cuda --with-gpu-arch=sm_35 \
50-
--with-cuda-dir=<full-path-where-CUDA-is-installed> \
51-
--with-magma --with-phigemm
52-
$ cd ..
53-
$ make -f Makefile.gpu pw-gpu
54-
55-
56-
An example for parallel execution:
57-
$ cd GPU
58-
$ ./configure --enable-parallel --enable-openmp --with-scalapack \
59-
--enable-cuda --with-gpu-arch=sm_35 \
60-
--with-cuda-dir=<full-path-where-CUDA-is-installed> \
61-
--without-magma --with-phigemm
62-
$ cd ..
63-
$ make -f Makefile.gpu pw-gpu
64-
65-
66-
For additional options for QE-GPU see "./configure --help". Here a summary
67-
of all GPU-related options
68-
69-
--enable-cuda enable CUDA (default: no)
70-
71-
--enable-debug-cuda enable CUDA debug (default: no)
72-
73-
--with-cuda-dir=<path> specify CUDA installation directory (default is
74-
/usr/local/cuda/ - MANDATORY)
75-
76-
--with-gpu-arch=<arch> (sm_13|sm_20|sm_21|sm_30|sm_35) Specify the GPU
77-
target architecture (default: all)
78-
79-
--with-magma (yes|no|<path>) Use MAGMA. Self-compile or a <path>
80-
can be specified (default: no)
81-
82-
--with-phigemm (yes|no|<path>|profile) Use PHIGEMM. Self-compile or
83-
a <path> can be specified (default: yes)
84-
85-
--with-pinned-mem (yes|no) Use pinned memory for accelerated BLAS
86-
(default: no )
87-
88-
IMPORTANT NOTES:
89-
- specify always the right GPU compute capability or leave the make to
90-
compile for all possible compute capabilities which support Double Precision
91-
- specify the correct PATH of CUDA (where CUDA is installed). Usually HPC
92-
systems have the env variable $CUDA_HOME or $CUDA_ROOT
93-
- "pw-gpu.x" will be placed under "bin/" (and also under "GPU/PW/")
94-
95-
96-
* * * * *
97-
98-
99-
Trouble-makers, inconsistencies, Known bugs, etc.
100-
-------------------------------------------------
101-
102-
- if you are using Intel MPI, please add to DFLAGS "-DMPICH_SKIP_MPICXX" to
103-
ignore MPI C++ bindings.
104-
105-
- if the calculation fail due to "S non definite positive" or other errors
106-
related to MAGMA then recompile by disabling MAGMA support.
107-
108-
109-
* * * * *
110-
111-
112-
In case of CUDA/GPU code errors...
113-
----------------------------------
114-
115-
It may happen that some ported routines fail. If this happen you can easily
116-
decide to run the code skipping that specific "GPU" section that may produce
117-
some issues. To do that it is possible to compile the code with few additional
118-
flags that exclude the GPU code related to ADDUSDENS, NEWD or VLOC_PSI.
119-
120-
These flags are:
121-
-D__DISABLE_CUDA_ADDUSDENS
122-
-D__DISABLE_CUDA_VLOCPSI
123-
-D__DISABLE_CUDA_NEWD
124-
125-
Without editing the make.sys, you can run make in this way:
126-
$ make -f Makefile.gpu MANUAL_DFLAGS="-D__DISABLE_CUDA_ADDUSDENS" pw-gpu
127-
128-
You can also specify more of these flags together.
20+
* For additional information please refer to README.md

README.md

+11-5
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,9 @@ under the GNU General Public License, please see the files LICENSE and
1515
DISCLAIMER for details. This README presents an introduction to compiling,
1616
installing, and using QE-GPU.
1717

18-
**This version is compatible only with Quantum ESPRESSO 5.4**
19-
2018
## Supported GPU Architectures
2119

22-
GPU | gpu-arch |
20+
GPU | gpu-arch |
2321
:---:|:---:|
2422
M2070 | Fermi |
2523
M2070Q | Fermi |
@@ -30,12 +28,20 @@ installing, and using QE-GPU.
3028
K40 | Kepler |
3129
K40c | Kepler |
3230
K80 | Kepler |
33-
P100 (PCIe) | Pascal |
34-
P100 (SMX2) | Pascal |
31+
P100 (PCIe) | Pascal (CUDA 8.0 mandatory) |
32+
P100 (SMX2) | Pascal (CUDA 8.0 mandatory)|
3533

3634

3735
Any other GPU not listed in this table is **not** officially supported. The code may work but due to lack of proper double precision support or ECC the performance will not be ideal.
3836

37+
for more information about NVIDIA GPU, see [Wikipedia](https://en.wikipedia.org/wiki/Nvidia_Tesla)
38+
39+
## Requirements
40+
41+
* Quantum ESPRESSO 5.4
42+
* Kepler GPU: (minimum) CUDA SDK 6.5
43+
* Pascal GPU: (minimum) CUDA SDK 8.0
44+
3945

4046
## How to compile
4147

0 commit comments

Comments
 (0)