[Q-e-developers] Quantum Espresso for SPEC CPUv6

Paolo Giannozzi paolo.giannozzi at uniud.it
Sat Nov 13 17:01:22 CET 2010


Dear Willi

sorry for the delay. I have collected a set of six inputs: two  
"tests", two "trains" (?),
two "refs", for executable pw.x. The two tests:
- test1: variable-cell optimization of diamond (norm-conserving, k- 
points)
- test2: structural optimization of H2O (ultrasoft, gamma point)
cover the most important functionalities of the code and execute in  
less than 10s on my PC.
The two "train" sets:
- train1: GFP chromophore (norm-conserving, gamma)
- train2: supercell of graphene (ultrasoft, k-point)
perform the most important step (self-consistency) for two realistic  
systems, in about
95s on my PC. The RAM usage is around 100 to 150 Mb. Finally, the  
"refs" sets:
- ref1:  64 water molecules  norm-conserving, gamma)
- ref2:  32-atom nanotube cell (ultrasoft, k-points)
execute in approx. 15' and require no less than 500Mb RAM. I have chosen
input options in such a way that very little data is written to file

In order to run the code, you need to know where pseudpotential files  
are.
This is set in the following environmental variables:
   export ESPRESSO_PSEUDO=./
if pseudopotential (*.UPF) files are kept here; otherwise,
   export ESPRESSO_PSEUDO="Directory where ESPRESSO is"/pseudo/
Also, the following variable should be set to some scratch directory,  
e.g.:
   export ESPRESSO_TMPDIR=./tmp
(if not existent, it will be created). Please let me know if this is  
what you
expect

Paolo

> This is what I have done so far. Before I write how I would like to  
> proceed, let me make a few remarks about the planned benchmark  
> suite. All involved people agree that parallelism must be  
> addressed. But it is not yet decided how to do it. QuantumEspresso  
> has MPI calls and OpenMP directives. It would be fine if we could  
> get all three versions (serial, MPI, OpenMP) running.
>
> Like the previous versions of SPEC CPU, CPUv6 uses three different  
> inputs.
> - The purpose of the first one (called "test") is to show that the  
> program works correctly in the environment. An execution time of 1  
> to 5 seconds is optimal. Example27 from espresso-4.2.1- 
> examples.tar.gz might be a candidate for "test".
> - The second input is called "train"; an execution time of 30 to 60  
> seconds is optimal. This input is used for compilation with Profile- 
> Guided-Optimization. Example17 from espresso-4.2.1-examples.tar.gz  
> might be a candidate for "train".
> - The third input, called "ref" is the real benchmark. The  
> execution time of a serial run should be in the range from 10 to 20  
> minutes with a modern processor; it should not exceed half an hour.
>
> How much memory must be used? There are no clear guidelines.  
> Personally, I would like to have at least one program in the suite  
> which needs more than 4 GB. (That would exclude all 32-bit  
> systems.) But this is my personal opinion. 4 GB will be regarded as  
> "big".
>
> How should I proceed? I think, the best way is as follows.
>
> - First I should get an input for the "ref" run.
> - When I succeeded to build the serial executables and run the  
> tests, then I should integrate it into the SPEC environment. (In SLES)
> - Then I should try to get MPI and OpenMP working in the SPEC  
> environment. (In SLES)
> - Then it should be ported to other systems: Red Hat, AIX, Solaris,  
> MacOS, Windows.
>
> Following this road, I ask you for input data. Do you have an input  
> file which is suitable for a "ref" run?
>
> Thanks for cooperating.
>
> Willi

---
Paolo Giannozzi, Dept of Chemistry&Physics, Univ. Udine
via delle Scienze 208, 33100 Udine, Italy
Phone +39-0432-558216, fax +39-0432-558222







More information about the developers mailing list