|
SEARCH
TOOLBOX
LANGUAGES
Forum Menu
Compiling NWChem on Cygwin
From NWChem
Viewed 9282 times, With a total of 17 Posts
|
Gets Around
Threads 26
Posts 85
|
|
2:49:39 AM PDT - Mon, May 20th 2013 |
|
Hi,
Thanks for the new version.
Unfortunately I was not able to compile it on Cygwin.
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
configure: searching for MPI_TS...
checking mpi.h usability... no
checking mpi.h presence... no
checking for mpi.h... no
configure: error: test for COMEX_NETWORK=MPI_TS failed
configure: error: ../../ga-5-2/comex/configure failed for comex
GNUmakefile:540: recipe for target `build/config.status' failed
Is it possible to compile it without MPI?
|
|
|
-
Edoapra Forum:Admin, Forum:Mod, bureaucrat, sysop
|
|
Forum Vet
Threads 3
Posts 855
|
|
9:32:25 AM PDT - Mon, May 20th 2013 |
|
Need to have MPI installed
|
P99
A prerequisite for a NWChem 6.3 build is to have MPI installed.
An easy way to install MPI on Windows (that should be compatible with Cygwin)
is to grab the Mpich installer at
http://www.mpich.org/static/tarballs/1.4.1p1/mpich2-1.4.1p1-win-ia32.msi
Once you have installed mpich2,
please set MPI_INCLUDE, MPI_LIB and LIBMPI according to you installation setup.
|
|
|
|
Gets Around
Threads 26
Posts 85
|
|
6:35:37 AM PDT - Tue, May 21st 2013 |
|
Thank you for the reply.
Another couple of questions.
Does this mean that I will not be able to use NWChem without MPI on the one core?
In particular, should be MPI installed on each machine that uses NWChem binary?
I installed mpich2. However, it seems to me that Cygwin can see only its own folders, and I do not understand how to setup MPI paths.
|
|
|
-
Edoapra Forum:Admin, Forum:Mod, bureaucrat, sysop
|
|
Forum Vet
Threads 3
Posts 855
|
|
2:30:45 PM PDT - Tue, May 21st 2013 |
|
Quote:P99 May 21st 5:35 amThank you for the reply.
Another couple of questions.
Does this mean that I will not be able to use NWChem without MPI on the one core?
In particular, should be MPI installed on each machine that uses NWChem binary?
I installed mpich2. However, it seems to me that Cygwin can see only its own folders, and I do not understand how to setup MPI paths.
In aswering your question
1) The non MPi code might still be there, but it is not maintained at all. You might try to use it at your own risk.
2) cygwin can see any Windows/DOS disk, e.g.
c:\ becomes /cygdrive/c/
d:\ becomes /cygdrive/d
There is even a utility for doing this kind conversions between windos and cygwin universes
http://cygwin-lite.sourceforge.net/html/cygpath.html
|
|
|
|
Gets Around
Threads 26
Posts 85
|
|
1:58:51 AM PDT - Wed, May 22nd 2013 |
|
Unfortunately, I never got compiled.
However, my main concern is - can I provide a binary file to my users? I understand that MPI is now required for use, but does that mean that the program can not be run in single-processor mode at all? Does this mean that every user will have to install MPI, or we can do a couple of dll? Will I be able to capture the output with an external program, as well as I do it on 6.1.1?
|
|
|
-
Bert Forum:Admin, Forum:Mod, NWChemDeveloper, bureaucrat, sysop
|
|
Forum Vet
Threads 5
Posts 598
|
|
8:47:21 AM PDT - Thu, May 23rd 2013 |
|
ARMCI_NETWORK=SOCKETS
|
You can try compiling without MPI using "export ARMCI_NETWORK=SOCKETS". This should also produce a serial binary.
Bert
|
|
|
|
Clicked A Few Times
Threads 5
Posts 21
|
|
12:58:44 AM PDT - Fri, May 24th 2013 |
|
I'm trying to compile 6.3 under cygwin as well, using the same configuration that worked with 6.1.1 (using mpich2), now gives the following errors:
In file included from /usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/objbase.h:157:0,
from /usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/ole2.h:16,
from /usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/wtypes.h:12,
from /usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/winscard.h:10,
from /usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/windows.h:97,
from ../ga-5-2/global/src/globalp.h:27,
from ../ga-5-2/global/src/sparse.c:16:
/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/wtypes.h:651:7: error: expected identifier or '(' before numeric constant
Makefile:7484: recipe for target `global/src/sparse.lo' failed
make[4]: *** [global/src/sparse.lo] Error 1
Makefile:7776: recipe for target `all-recursive' failed
make[3]: *** [all-recursive] Error 1
Makefile:4939: recipe for target `all' failed
make[2]: *** [all] Error 2
GNUmakefile:525: recipe for target `build/.libs/libga.a' failed
make[1]: *** [build/.libs/libga.a] Error 1
GNUmakefile:111: recipe for target `libraries' failed
make: *** [libraries] Error 1
Any clue what goes wrong here?
|
|
|
|
Gets Around
Threads 26
Posts 85
|
|
3:26:31 AM PDT - Fri, May 24th 2013 |
|
I have the same problem with "ARMCI_NETWORK SOCKETS".
|
|
|
-
Bert Forum:Admin, Forum:Mod, NWChemDeveloper, bureaucrat, sysop
|
|
Forum Vet
Threads 5
Posts 598
|
|
9:05:17 AM PDT - Fri, May 24th 2013 |
|
We are investigating the wtypes.h error.
|
|
|
-
Bert Forum:Admin, Forum:Mod, NWChemDeveloper, bureaucrat, sysop
|
|
Forum Vet
Threads 5
Posts 598
|
|
11:41:59 AM PDT - Fri, May 24th 2013 |
|
Fix for type errors using SOCKETS
|
In:
src/tools/ga-5-2/global/src/sparse.c
Swap lines 15 and 16, i.e. replace:
#include "abstract_ops.h"
#include "globalp.h"
With:
#include "globalp.h"
#include "abstract_ops.h"
There seems to be some order dependency with respect to definitions.
Bert
|
|
|
|
Clicked A Few Times
Threads 5
Posts 21
|
|
1:11:03 AM PDT - Mon, May 27th 2013 |
|
Yes, now it compiles properly. Thanks.
|
|
|
|
Gets Around
Threads 26
Posts 85
|
|
5:24:17 AM PDT - Mon, May 27th 2013 |
|
Thank you very much, now compiled.
I have done the following:
Swap "abstract_ops.h" and "globalp.h" in src/tools/ga-5-2/global/src/sparse.c
csh
setenv NWCHEM_TOP ~/nwchem-6.3-src.2013-05-17
setenv NWCHEM_TARGET CYGWIN
setenv NWCHEM_MODULES all
setenv ARMCI_NETWORK SOCKETS
cd $NWCHEM_TOP/src
make nwchem_config
make > & make.log
Quote:Bert May 24th 11:41 amIn:
src/tools/ga-5-2/global/src/sparse.c
Swap lines 15 and 16, i.e. replace:
#include "abstract_ops.h"
#include "globalp.h"
With:
#include "globalp.h"
#include "abstract_ops.h"
There seems to be some order dependency with respect to definitions.
Bert
|
|
|
|
Gets Around
Threads 26
Posts 85
|
|
5:28:38 AM PDT - Mon, May 27th 2013 |
|
Hi Ivo,
Could you be so kind to explain how to compile with MPI.
Unfortunately, I have only a single processor version.
|
|
|
|
Clicked A Few Times
Threads 5
Posts 21
|
|
5:51:34 AM PDT - Mon, May 27th 2013 |
|
I have mpich2 installed under /home/ivo/mpich2-install.
Then I have the following environmental variables in place:
setenv NWCHEM_TOP /home/ivo/nwchem-6.3-src.2013-05-17
setenv NWCHEM_TARGET CYGWIN
setenv NWCHEM_MODULES all
setenv FC gfortran
setenv USE_MPI y
setenv LIBMPI "-lpmpich -lmpich -lopa -lmpl -lpthread -lmpichf90"
setenv MPI_LIB /home/ivo/mpich2-install/lib
setenv MPI_INCLUDE /home/ivo/mpich2-install/include
Then from /home/ivo/nwchem-6.3-src.2013-05-17/src I do:
make nwchem_config
make >& make.log
That at least works for me.
There are still some issues with some of the QA tests though. Will post them when they are done.
|
|
|
|
Clicked A Few Times
Threads 5
Posts 21
|
|
1:57:39 AM PDT - Thu, Jun 20th 2013 |
|
These are the results of the small tests:
Running tests/h2o_opt/h2o_opt
verifying output ... OK
Running tests/c2h4/c2h4
verifying output ... OK
OK
Running tests/auh2o/auh2o
verifying output ... OK
Running tests/autosym/autosym
verifying output ... OK
Running tests/dft_he2+/dft_he2+
verifying output ... OK
Running tests/h2mp2/h2mp2
verifying output ... OK
Running tests/h2o/h2o
verifying output ... OK
Running tests/hess_h2o/hess_h2o
verifying output ... OK
Running tests/prop_h2o/prop_h2o
verifying output ... OK
Running tests/pyqa/pyqa
NWChem execution failed #Not using python, so this makes sense
Failed
Running tests/geom_zmatrix/geom_zmatrix
verifying output ... OK
Running tests/rimp2_ne/rimp2_ne
verifying output ... OK
Running tests/rimp2_he/rimp2_he
verifying output ... OK
Running tests/scf_feco5/scf_feco5
verifying output ... OK
Running tests/small_intchk/small_intchk
verifying output ... OK
Running tests/tagcheck/tagcheck
verifying output ... OK
Running tests/testtab/testtab
verifying output ... OK
OK
Running tests/h2o_dk/h2o_dk
verifying output ... OK
Running tests/u_sodft/u_sodft
verifying output ... OK
Running tests/cosmo_h2o/cosmo_h2o
verifying output ... OK
Running tests/ch5n_nbo/ch5n_nbo
verifying output ... OK
Running tests/h2s_finite/h2s_finite
verifying output ... OK
Running tests/startag/startag
verifying output ... OK
OK
Running tests/cosmo_h2o_dft/cosmo_h2o_dft
verifying output ... OK
Running tests/cosmo_h2o_bq/cosmo_h2o_bq
verifying output ... OK
Running tests/be/be
verifying output ... OK
Running tests/dft_s12gh/dft_s12gh
verifying output ... failed #0.0001 difference for a gradient
Failed
Running tests/cosmo_trichloroethene/cosmo_trichloroethene
verifying output ... failed #0.0005 a.u. difference in effective nuclear erpulsion energy and dft energy
Running tests/esp/esp
verifying output ... ESP charges match
Running tests/esp_uhf/esp_uhf
verifying output ... ESP charges match
Running tests/dft_bsse/dft_bsse
verifying output ... OK
Running tests/bsse_dft_trimer/bsse_dft_trimer
verifying output ... failed #0.00014 kcal/mol difference in zero-point energy
Failed
Running tests/cosmo_h2cco2/cosmo_h2cco2
verifying output ... OK
Running tests/cosmo_h2cco2mg/cosmo_h2cco2mg
verifying output ... OK
Running tests/cosmo_h2cco2mg_ecp/cosmo_h2cco2mg_ecp
verifying output ... OK
OK
Running tests/cosmo_h3co/cosmo_h3co
verifying output ... failed #0.0005 a.u. difference in effective nuclear repulsion energy, some numbers swapped
Running tests/cosmo_h3co_ecp/cosmo_h3co_ecp
NWChem execution failed #"too many iterations" "hnd_cosequ: too many iters 911"
Running tests/cosmo_h2cco2na/cosmo_h2cco2na
verifying output ... failed #0.0001 a.u. difference in effective nuclear repulsion energy
Running tests/cosmo_h3co_gp/cosmo_h3co_gp
verifying output ... failed #differences in effective nuclear repulsion energy (0.1 a.u.), coordinates (0.001) and gradients (0.002)
Failed
Running tests/dplot/dplot
verifying output ... OK
Running tests/dft_meta/dft_meta
verifying output ... OK
Running tests/dft_mpwb1khf/dft_mpwb1khf
verifying output ... OK
Running tests/dft_m05nh2ch3/dft_m05nh2ch3
verifying output ... OK
Running tests/prop_uhf_h2o/prop_uhf_h2o
verifying output ... OK
OK
Running tests/et_zn_dimer/et_zn_dimer
verifying output ... OK
Running tests/vectors_rotate/vectors_rotate
verifying output ... OK
Running tests/sad_ch3hf/sad_ch3hf
verifying output ... OK
OK
Running tests/h2o_diag_to_cg/h2o_diag_to_cg
verifying output ... OK
Running tests/h2o_cg_to_diag/h2o_cg_to_diag
verifying output ... OK
OK
Running tests/h2o_diag_opt/h2o_diag_opt
verifying output ... OK
Running tests/h2o_cg_opt/h2o_cg_opt
verifying output ... OK
Running tests/h2o_diag_opt_ub3lyp/h2o_diag_opt_ub3lyp
verifying output ... failed #0.0001 difference in coordinate
Running tests/h2o_cg_opt_ub3lyp/h2o_cg_opt_ub3lyp
verifying output ... OK
Running tests/h2o_cg_opt_rob3lyp/h2o_cg_opt_rob3lyp
verifying output ... failed #0.0001 difference in coordiante, 0.0002 a.u. difference in effective nuclear repulsion energy
Failed
Running tests/h2o_diag_to_cg_ub3lyp/h2o_diag_to_cg_ub3lyp
verifying output ... failed #0.0001 difference in total dft energy
Running tests/h2o_cg_to_diag_ub3lyp/h2o_cg_to_diag_ub3lyp
verifying output ... OK
Failed
The oh2 test is testing the perl parsing script and SHOULD fail
Running tests/oh2/oh2
verifying output ... failed
Failed
Most of the differences seem to be very minor. The only job to give relatively big differences is cosmo_h3co_gp. And I don't know why cosmo_h3co_ecp crashed.
|
|
|
AWC's:
2.5.10 MediaWiki - Stand Alone Forum Extension Forum theme style by: AWC
| |