HPC/Applications/quantum-espresso: Difference between revisions

From CNM Wiki
Jump to navigation Jump to search
Line 8: Line 8:
== Limitations ==
== Limitations ==
* QE stores rather large wave function files in the directory specified by <code>outdir</code> or the <code>ESPRESSO_TMPDIR</code> environment variable. This may unduly tax the file server.
* QE stores rather large wave function files in the directory specified by <code>outdir</code> or the <code>ESPRESSO_TMPDIR</code> environment variable. This may unduly tax the file server.
* In a subdirectory  <code>''prefix''.save/</code> the main QE program pw.x stores important metadata needed for subsequent calculations such as a DOS calculation. This means the <code>…TMP</code> part in the  name   <code>ESPRESSO_TMPDIR</code> is misleading.
* In a subdirectory  <code>''prefix''.save/</code> the main QE program pw.x stores important metadata needed for subsequent calculations such as a DOS calculation. This means the <code>…TMP</code> part in the  name <code>ESPRESSO_TMPDIR</code> is misleading.
* Wave function files from parallel runs are stored by MPI process number and are named sequentially <code>''prefix''.wfc''n''</code>. Subsequent calculations must use the same number of MPI processes, and each process must have access to its own ''n''. That means using a node-local directory is overly difficult.
* Wave function files from parallel runs are stored by MPI process number and are named sequentially <code>''prefix''.wfc''n''</code>. Subsequent calculations must use the same number of MPI processes, and each process must have access to its own ''n''. That means using a node-local directory is overly difficult.
* QE expects the value of <code>ESPRESSO_PSEUDO</code> to terminate with a slash <code>/</code>. The pw.x binary managed to accept a value without a terminating slash, but other executables such as dos.x failed. This is counter to Unix best practice, and counter to "." being accepted just fine.


<!--
=== Changes ===
With <code>''prefix''</code> being a user-specified name.
As of module version '''quantum-espresso/4.3.2-2''':
http://www.quantum-espresso.org/wp-content/uploads/Doc/pw_user_guide/node9.html
* given the problems above, the environment variable <code>ESPRESSO_TMPDIR</code> is ''no longer set''.
-->
* The value of <code>ESPRESSO_PSEUDO</code> now ends with a slash. Unfortunately, the new value will be of no help for older calculations since <code>''prefix''.save/data-file.xml</code> enshrines the old value. To continue with an older calculation:
*: <source lang="bash">perl -i.bak -pe 's{/opt/soft/quantum-espresso-pot/pseudo$}{$&/}' */data-file.xml</source>
*: There will not be any output, but you can inspect the changes:
*: <source lang="bash">for i in  */data-file.xml; do diff $i.bak $i; done</source>

Revision as of 22:34, January 18, 2013

Introduction

Quantum ESPRESSO is a suite of several programs working on the same data files. This brings with it some challenges for data management, and there are some problems.

  • A sample job file is at the customary location once the quantum-espresso module is loaded.
$QUANTUM_ESPRESSO_HOME/sample.job

Limitations

  • QE stores rather large wave function files in the directory specified by outdir or the ESPRESSO_TMPDIR environment variable. This may unduly tax the file server.
  • In a subdirectory prefix.save/ the main QE program pw.x stores important metadata needed for subsequent calculations such as a DOS calculation. This means the …TMP part in the name ESPRESSO_TMPDIR is misleading.
  • Wave function files from parallel runs are stored by MPI process number and are named sequentially prefix.wfcn. Subsequent calculations must use the same number of MPI processes, and each process must have access to its own n. That means using a node-local directory is overly difficult.
  • QE expects the value of ESPRESSO_PSEUDO to terminate with a slash /. The pw.x binary managed to accept a value without a terminating slash, but other executables such as dos.x failed. This is counter to Unix best practice, and counter to "." being accepted just fine.

Changes

As of module version quantum-espresso/4.3.2-2:

  • given the problems above, the environment variable ESPRESSO_TMPDIR is no longer set.
  • The value of ESPRESSO_PSEUDO now ends with a slash. Unfortunately, the new value will be of no help for older calculations since prefix.save/data-file.xml enshrines the old value. To continue with an older calculation:
    perl -i.bak -pe 's{/opt/soft/quantum-espresso-pot/pseudo$}{$&/}' */data-file.xml
    
    There will not be any output, but you can inspect the changes:
    for i in  */data-file.xml; do diff $i.bak $i; done