Difference between revisions of "NECI-testcode"
import>Js615 |
import>Js615 |
||
Line 19: | Line 19: | ||
Although this example uses svn, other version control software can be used. Currently, svn and git are supported by the testcode. |
Although this example uses svn, other version control software can be used. Currently, svn and git are supported by the testcode. |
||
− | 2. |
+ | 2. Compiling the libraries |
Certain compilers require certain libraries to be available when compiling CPMD and NECI. Which libraries are required can be investigated in the file checktest_config. |
Certain compilers require certain libraries to be available when compiling CPMD and NECI. Which libraries are required can be investigated in the file checktest_config. |
||
Line 46: | Line 46: | ||
It's important to note that the current version of fftw (3.2.2) doesn't compile with pathscale. |
It's important to note that the current version of fftw (3.2.2) doesn't compile with pathscale. |
||
− | Also, to use lapack as a library, |
+ | Also, to use lapack as a library, different files need to be present in the lapack directories: |
ln -s lapack_LINUX.a liblapack.a |
ln -s lapack_LINUX.a liblapack.a |
||
See [[Lapack compilation]] for more information. |
See [[Lapack compilation]] for more information. |
||
+ | |||
+ | 3. Setting up the libraries as modules |
Revision as of 15:39, 12 October 2009
This is a new page to post info on how to migrate the test code between machines, as was done between discovery and scepter recently. I will be adding to this as and when I have spare time. --js615 12:52, 12 October 2009 (BST)
Setting up the testcode
1. Check out the components
This script written by JSS sets the correct permissions for the CLEAN directory, including the "2" sticky. To take advantage of these permissions, all group members need to add umask 2 to their .bashrc files.
#!/bin/bash -x SVN=https://wwmm.ch.cam.ac.uk/svn2/groups/alavi mkdir CLEAN chgrp alavi CLEAN chmod 2775 CLEAN cd CLEAN svn co $SVN/NECI/trunk NECI svn co $SVN/CPMD/branches/QMC/trunk CPMD svn co $SVN/testcode testcode
Although this example uses svn, other version control software can be used. Currently, svn and git are supported by the testcode.
2. Compiling the libraries
Certain compilers require certain libraries to be available when compiling CPMD and NECI. Which libraries are required can be investigated in the file checktest_config.
js615@scepter:~/CLEAN/testcode/main_testcode/tools> cat checktest_config
This contains blocks like this.
[PC-PGI] modules = pgi/32/8.0/5 use.own fftw3.2.2/32/pgi job_types = neci job_categories = NECI
Although not all versions are used, it is convenient to compile lapack and fftw across a range of compilers so that they are accessible to the test code.
Download the latest fftw and lapack into ~/local/lib. There are then four scripts (written by JSS) used to compile these with different compilers. Make edits to the versions as appropriate.
It's important to note that the current version of fftw (3.2.2) doesn't compile with pathscale.
Also, to use lapack as a library, different files need to be present in the lapack directories:
ln -s lapack_LINUX.a liblapack.a
See Lapack compilation for more information.
3. Setting up the libraries as modules