make test_* abinit already in path  [SOLVED]

option, parallelism,...

Moderators: fgoudreault, mcote

Forum rules
Please have a look at ~abinit/doc/config/build-config.ac in the source package for detailed and up-to-date information about the configuration of Abinit 8 builds.
For a video explanation on how to build Abinit 7.x for Linux, please go to: http://www.youtube.com/watch?v=DppLQ-KQA68.
IMPORTANT: when an answer solves your problem, please check the little green V-like button on its upper-right corner to accept it.
Locked
zeroth
Posts: 12
Joined: Fri Jan 24, 2014 5:12 pm

make test_* abinit already in path

Post by zeroth » Sat Nov 28, 2015 12:40 am

Problem,
You have abinit in your path PATH=$HOME/bin:./
and abinit in $HOME/bin. Note that the current directory path is after bin.
Running

Code: Select all

make test_*

will do these things:

Code: Select all

cp $(top_builddir)/src/98_main/abinit $(top_srcdir)/tests/built-in/Input/abinit && cd $(top_srcdir)/tests/built-in/Input && abinit < testin_fast.files >& testin_fast.stdout && cat testin_fast_tmp_STATUS && rm abinit
...

which will execute abinit from path, and not the one recently copied.

Solution, prepend a

Code: Select all

./
to the abinit call like this

Code: Select all

cp $(top_builddir)/src/98_main/abinit $(top_srcdir)/tests/built-in/Input/abinit && cd $(top_srcdir)/tests/built-in/Input && ./abinit < testin_fast.files >& testin_fast.stdout && cat testin_fast_tmp_STATUS && rm abinit
/ Nick Papior

Jordan
Posts: 282
Joined: Tue May 07, 2013 9:47 am

Re: make test_* abinit already in path  [SOLVED]

Post by Jordan » Mon Nov 30, 2015 8:02 am

1) It is usually not recommanded to have "." in the path since you may have conflict with other search directories.
2) You use the old fashion test farm which is not upgraded anymore but migrated to the new test farm. So if you want to avoid the problem you mentioned, use the new test farm.
Let assume you have ~abinit and you compile abinit in ~abinit/build then go for intance to ~abinit/build/tests and run

Code: Select all

../../tests/runtests.py

or more generally

Code: Select all

~abinit/tests/runtests.py

You can specify keyword with -k or familly test like fast tutorials ....
Don't hesitate to read the help description with '-h'

Jordan

zeroth
Posts: 12
Joined: Fri Jan 24, 2014 5:12 pm

Re: make test_* abinit already in path

Post by zeroth » Mon Nov 30, 2015 9:06 am

Jordan wrote:1) It is usually not recommanded to have "." in the path since you may have conflict with other search directories.

I agree, it was however the only way I could successfully run the tests. ;)
Jordan wrote:2) You use the old fashion test farm which is not upgraded anymore but migrated to the new test farm. So if you want to avoid the problem you mentioned, use the new test farm.
Let assume you have ~abinit and you compile abinit in ~abinit/build then go for intance to ~abinit/build/tests and run

Code: Select all

../../tests/runtests.py

or more generally

Code: Select all

~abinit/tests/runtests.py

You can specify keyword with -k or familly test like fast tutorials ....
Don't hesitate to read the help description with '-h'

Ok, I have changed to the new test farm.

There however, are a few errors:

Code: Select all

[atompaw][t02][np=1]Test was not expected to fail but subrocesses returned 14

--- !ERROR
message: |
    Fortran open returned iostat 2 while opening: ....compile/abinit-7.10.5/tests/Psps_for_tests/C.LDA-PW-paw.abinit
    , IOMSG: Cannot open file '....compile/abinit-7.10.5/tests/Psps_for_tests/C.LDA-PW-paw.abinit': No such file or directory
src_file: inpspheads.F90
src_line: 118
...

#0  0x2AF89FFC8C07
#1  0x2323374 in __m_errors_MOD_msg_hndl at m_errors.F90:910
#2  0x18E6524 in inpspheads_ at inpspheads.F90:118
#3  0x17AA7B9 in __m_ab7_invars_MOD_ab7_invars_load at m_ab7_invars_f90.F90:679
#4  0x4193AF in abinit at abinit.F90:310

Command  mpirun -np 1   < ....compile/abinit-7.10.5/build-tmp/tests/Test_suite/atompaw_t03-t04/t03.stdin > ...compile/abinit-7.10.5/build-tmp/tests/Test_suite/atompaw_t03-t04/t03.stdout 2> ....compile/abinit-7.10.5/build-tmp/tests/Test_suite/atompaw_t03-t04/t03.stderr
 returned exit_code: 1

fails as C.LDA-PW-paw.abinit does not exist in the specified pseudo folder, perhaps it is missing in the distribution?

Same thing for t04 with pseudo: Ni.GGA-PBE-paw.abinit

Thanks.
/ Nick Papior

Jordan
Posts: 282
Joined: Tue May 07, 2013 9:47 am

Re: make test_* abinit already in path

Post by Jordan » Tue Dec 01, 2015 8:27 am

I don't know if it is normal or not but you can download some - maybe different - other paw atomic data here

Cheers

zeroth
Posts: 12
Joined: Fri Jan 24, 2014 5:12 pm

Re: make test_* abinit already in path

Post by zeroth » Tue Dec 01, 2015 8:45 am

While I know that you can download PAWs, I think the intent was to ship it with build system, otherwise a test does not make sense (taking a wrong pseudo will give "erroneous" results)
/ Nick Papior

User avatar
torrent
Posts: 127
Joined: Fri Aug 14, 2009 7:40 pm

Re: make test_* abinit already in path

Post by torrent » Wed Dec 02, 2015 9:44 am

Hi,

You cannot launch the atompaw#02 automatic test alone.
It has to be chained with the test atompaw#01 because the latter is suppposed to generate the pseudopotential file.

So, instead, launch:
~abinit/tests/runtests.py atompaw[01:02}

(see "test_chain = t01.in, t02.in" in atompaw/Input/t01.in and atompaw/Input/t02.in)

Marc
Marc Torrent
CEA - Bruyères-le-Chatel
France

zeroth
Posts: 12
Joined: Fri Jan 24, 2014 5:12 pm

Re: make test_* abinit already in path

Post by zeroth » Wed Dec 02, 2015 9:57 am

Thanks Marc,

I called it like this:

Code: Select all

../../tests/runtests.py --loglevel=INFO -v -v -n 2 --pedantic atompaw etsf_io libxc wannier90

that should enable all tests right?
And call them in correct order?
If not I think the test API is slightly confusing :)

My assumption was that it runs them all sequentially, and those that can be runned with MPI procs will use -n 2.
/ Nick Papior

User avatar
torrent
Posts: 127
Joined: Fri Aug 14, 2009 7:40 pm

Re: make test_* abinit already in path

Post by torrent » Sun Dec 06, 2015 2:09 pm

Hi,

I tried to reproduce your problem:
- official abinit v7.10.5
- ../../tests/runtests.py --loglevel=INFO -v -v -n 2 --pedantic atompaw

...and everything went fine.
(except some errors in logging due to my python version)
Marc Torrent
CEA - Bruyères-le-Chatel
France

zeroth
Posts: 12
Joined: Fri Jan 24, 2014 5:12 pm

Re: make test_* abinit already in path

Post by zeroth » Sun Dec 06, 2015 9:06 pm

Ok, weird.
Well, until I figure out why, I will close this issue.

Thanks for help.
/ Nick Papior

Locked