[Q-e-developers] QE-GPU, plug-in packaging format and backward compatibility

Filippo Spiga spiga.filippo at gmail.com
Fri May 31 17:46:40 CEST 2013


Dear GPU users,

very soon (by the end of this day) I will upload on QE-FORGE new packages and patches to enable QE to exploit GPU acceleration. In the past weeks I have been working to change how the GPU plug-in is integrated in the main trunk. Let me explain shortly how this new thing will work…

QE-GPU will be distributed as plug-in only, it means that when you download QE-GPU-rXXXX.tar.gz you have only the "GPU" directory and not the entire source code (that has to be downloaded separately).  "XXXX" is a number based on the SVN version of the code and it will be a way to identify various versions of the plug-in. Higher is the number, most updated is the code. The package will be compatible with the latest version of the code straight without any addition. 

This is possible because new developments pushed in the QE main trunk let the QE aware about the QE-GPU plug-in. Old versions of the code (like 5.0.1 or 5.0 or 4.3.x) need an additional patch to let the code accepts and interact with the QE-GPU plug-in. This patch name format is "QE-<version>_GPU-rXXXX.patch"

Old versions of the code need different patches for obvious reasons. As you can expect, it is very important to apply the correct patch on a old version. if you have lot of modifications in the code you might experience problems applying a patch. In these cases please contact me for assistance! Moreover because the code evolves, it will be not possible to apply patches forever or to allow old versions to exploit new GPU capabilities.  My only suggestion is a simple one: ALWAYS use the LATEST version of QE and the LATEST version of QE-GPU.

Let me give some practical example about how this "patch stuff" will work…

### Example 1: using the latest QE version, adding GPU capabilities
# What to do: 
- download QE-5.0.2
- un-tar the source code and enter into the main directory
- (eventually) apply the latest patch (file: espresso-5.0.2-5.0.3.diff)
- download the latest QE-GPU-rXXXX.tar.gz 
- un-tar QE-GPU-rXXXX.tar.gz (a directory called "GPU" will appear)
- compile the code as reported on the QE-GPU website


### Example 2: using the an old QE version (e.g. 5.0), add GPU capabilities
# What to do: 
- download QE-5.0
- un-tar the source code and enter into the main directory
- download the latest QE-5.0_GPU-rXXXX.patch
- apply the patch QE-5.0_GPU-rXXXX.patch (patch -p1 < QE-5.0_GPU-rXXXX.patch) <--- IMPORTANT STEP
- download QE-GPU-rXXXX.tar.gz 
- un-tar QE-GPU-rXXXX.tar.gz (a directory called "GPU" will appear)
- compile the code as reported on the QE-GPU website

Cheers,
Filippo

--
Mr. Filippo SPIGA, M.Sc.
http://www.linkedin.com/in/filippospiga ~ skype: filippo.spiga

«Nobody will drive us out of Cantor's paradise.» ~ David Hilbert

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/developers/attachments/20130531/c3b41221/attachment.html>


More information about the developers mailing list