The only way I know to do something similar to what you want to do is
to restraint/constraint
the charge on few atoms:
http://cp2k.berlios.de/manual/CP2K_INPUT/FORCE_EVAL/DFT/QS/
DDAPC_RESTRAINT.html
http://cp2k.berlios.de/manual/CP2K_INPUT/FORCE_EVAL/DFT/QS/
MULLIKEN_RESTRAINT.html
http://cp2k.berlios.de/manual/CP2K_INPUT/FORCE_EVAL/DFT/QS/
BECKE_CONSTRAINT.html
you may also want to have a look at the regtests using those sections
(to have an idea of the working template).
Hope this helps,
Teo
| Dear all, I have been trying to compile cp2k (just serially) on the Linux Cluster we have Suse Enterprise 9 x86_64 Intel Xeon CPUs Intel ifort 9,10 Intel MKL 9,10 but so far to no avail !! Can you havve a look at the /arch file Linux-x86-64-intel.sopt to see if there is something wrong ? Thanks for your help Roberto Scipioni ####INTEL_INC = /opt/intel/fce/9.1.036/include/ INTEL_INC = /opt/intel/fce/10.0.025/include/ CC = icc CPP = cpp FC = /opt/intel/fce/10.0.025/bin/ifort -FR FC_fixed = /opt/intel/fce/10.0.025/bin/ifort -FI LD = /opt/intel/fce/10.0.025/bin/ifort -i-static AR = ar -r ###DFLAGS = -D__INTEL -D__FFTSG -D__FFTW3 DFLAGS = -D__INTEL -D__FFTSG CPPFLAGS = -C -traditional $(DFLAGS) -I$(INTEL_INC) ####FCFLAGS = $(DFLAGS) -I$(INTEL_INC) -O2 -xW -heap-arrays 64 -fpp -free FCFLAGS = $(DFLAGS) -I$(INTEL_INC) -O2 -unroll -Vaxlib ###LDFLAGS = $(FCFLAGS) -L/opt/intel/mkl/9.0/lib/em64t/ -L/root/install/fftw-3.1.3/.libs/ LDFLAGS = $(FCFLAGS) ###LIBS = -lmkl_em64t -lguide -lfftw3 #LIBS = -L/opt/intel/mkl/10.0.1.014/lib/em64t/libmkl_em64t.a\ # -L/opt/intel/mkl/10.0.1.014/lib/em64t/libguide.a LIBS = -L/opt/acml4.1.0/ifort64_int64/lib/libacml.a\ -L/opt/acml4.1.0/ifort64_int64/lib/libacml_mv.a\ -L/root/install/fftw-3.1.3/.libs/libfftw3.a ###LIBS = -L/opt/intel/mkl/9.0/lib/em64t -lmkl_em64t -lguide ### -L/root/install/fftw-3.1.3/.libs/libfftw3.a OBJECTS_ARCHITECTURE = machine_intel.o ifposix.int: touch ifposix.int ~ |
| The error was at the final linking stage R. |
| well unfortunately the synthoms change by changing the conditons (i.e. compilers, math libraries, etc ...) The general error is that the libraries give undefined references to .... for example in what follows is the concluding part of the error ---------------- /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x205): In function `ff tw31dm_': : undefined reference to `zdscal_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x256): In function `ff tw31dm_': : undefined reference to `dfftw_plan_many_dft_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x329): In function `ff tw33d_': : undefined reference to `dfftw_execute_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x335): In function `ff tw33d_': : undefined reference to `dfftw_destroy_plan_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x372): In function `ff tw33d_': : undefined reference to `zdscal_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x3a5): In function `ff tw33d_': : undefined reference to `zdscal_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x3dc): In function `ff tw33d_': : undefined reference to `dfftw_plan_dft_3d_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x410): In function `ff tw33d_': : undefined reference to `dfftw_plan_dft_3d_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x444): In function `ff tw33d_': : undefined reference to `dfftw_plan_dft_3d_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftw3_lib.o)(.text+0x478): In function `ff tw33d_': : undefined reference to `dfftw_plan_dft_3d_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftacml_lib.o)(.text+0x1a9): In function ` fftacml1dm_': : undefined reference to `zfft1mx_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftacml_lib.o)(.text+0x227): In function ` fftacml1dm_': : undefined reference to `zfft1mx_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftacml_lib.o)(.text+0x4aa): In function ` fftacml3d_': : undefined reference to `zfft3dx_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(fftacml_lib.o)(.text+0x510): In function ` fftacml3d_': : undefined reference to `zfft3dx_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_fft_lib.a(mltfftsg_tools.o)(.text+0xf): In function `mltfftsg_tools_mp_scaled_': : undefined reference to `dscal_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_base_lib.a(fast.o)(.text+0x8f2): In function `rankup _': : undefined reference to `zgeru_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_base_lib.a(fast.o)(.text+0x909): In function `rankup _': : undefined reference to `zscal_' /home/robechan/cp2k_new2/cp2k/makefiles/../lib/Linux-x86-64-intel/sopt/libcp2k_base_lib.a(fast.o)(.text+0x941): In function `rankup _': : undefined reference to `zgeru_' make[2]: *** [/home/robechan/cp2k_new2/cp2k/makefiles/../exe/Linux-x86-64-intel/cp2k.sopt] Error 1 make[2]: Leaving directory `/home/robechan/cp2k_new2/cp2k/obj/Linux-x86-64-intel/sopt' make[1]: *** [build] Error 2 make[1]: Leaving directory `/home/robechan/cp2k_new2/cp2k/makefiles' make: *** [sopt] Error 2 ------------------------ Roberto - |
| Hi all, Now I have been trying to make the parallel version work I used the arch file (I used ifort 10.0 and mkl 10) |
CC = icc CPP = cpp |
| FC = /opt/ompi_ifort10/bin/mpif90 -FR FC_fixed = /opt/ompi_ifort10/bin/mpif90 -FI LD = /opt/ompi_ifort10/bin/mpif90 -i_dynamic -openmp AR = ar -r DFLAGS = -D__INTEL -D__FFTSG -D__parallel -D__BLACS -D__SCALAPACK -D__FFTW3 CPPFLAGS = -traditional -C $(DFLAGS) -P FCFLAGS = $(DFLAGS) -O3 -Vaxlib LDFLAGS = $(FCFLAGS) -L/opt/intel/mkl/10.0.1.014/lib/em64t/ LIBS=/opt/intel/mkl/10.0.1.014/lib/em64t/libmkl_scalapack.a /opt/intel/mkl/10.0.1.014/lib/em64t/libmkl_blacs_openmpi_ilp64.a /opt/intel/mkl/10.0.1.014/lib/em64t/libmkl_em64t.a /opt/FFTW/fftw-3.1.3/.libs/libfftw3.a -lguide -lpthread OBJECTS_ARCHITECTURE = machine_intel.o The compilation was fine I produced the binary cp2k.popt Then I went to the tests directory and I use the script #!/bin/sh ########################################################### #PBS -N TEST #PBS -l walltime=100:00:00 #PBS -l nodes=1:ppn=1:node0 ############################################################ cd ${PBS_O_WORKDIR} /opt/ompi_ifort10/bin/mpirun -np 1 -npernode 1 -x OMP_NUM_THREADS=1 ~/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt 3H2O-ep.inp > out exit 0 ############################################################ ~ ~ But I got the following error [shizuwo:27227] *** Process received signal *** [shizuwo:27227] Signal: Segmentation fault (11) [shizuwo:27227] Signal code: Address not mapped (1) [shizuwo:27227] Failing at address: 0x100 [shizuwo:27227] [ 0] /lib64/tls/libpthread.so.0 [0x2a957bd650] [shizuwo:27227] [ 1] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(cp_blacs_env_mp_cp_blacs_env_create_+0x37f) [0xe0325d] [shizuwo:27227] [ 2] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(qs_environment_types_mp_qs_env_create_+0x3bc) [0x849c2c] [shizuwo:27227] [ 3] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(qs_main_mp_quickstep_create_force_env_+0x7d) [0x8e1ec9] [shizuwo:27227] [ 4] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(f77_interface_mp_create_force_env_+0x1431) [0x4c2ce3] [shizuwo:27227] [ 5] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(ep_methods_mp_ep_env_init_low_+0x66a) [0x13fa502] [shizuwo:27227] [ 6] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(cp_ep_init_+0x8) [0xf35cbc] [shizuwo:27227] [ 7] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(ep_types_mp_ep_env_create_+0x21b) [0xf0b783] [shizuwo:27227] [ 8] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(force_env_methods_mp_ep_create_force_env_+0x46) [0x511210] [shizuwo:27227] [ 9] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(f77_interface_mp_create_force_env_+0x1532) [0x4c2de4] [shizuwo:27227] [10] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(cp2k_runs_mp_cp2k_run_+0x1498) [0x48dc5c] [shizuwo:27227] [11] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(cp2k_runs_mp_run_input_+0x10a) [0x48c762] [shizuwo:27227] [12] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(MAIN__+0xda5) [0x48b7c5] [shizuwo:27227] [13] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(main+0x2a) [0x48aa12] [shizuwo:27227] [14] /lib64/tls/libc.so.6(__libc_start_main+0xea) [0x2a96d91aaa] [shizuwo:27227] [15] /home/robechan/cp2k_new2/cp2k/exe/TEST_64_2_ifort10_mkl10/cp2k.popt(for_write_seq_fmt_xmit+0x42) [0x48a94a] [shizuwo:27227] *** End of error message *** mpirun noticed that job rank 0 with PID 27227 on node shizuwo exited on signal 11 (Segmentation fault). ~ and the following output in the file out ---------------------------------------------------------------------------------------------------------------- @shizuwo has created process number 0 27227 **** **** ****** ** PROGRAM STARTED AT Wed Oct 22 15:24:26 2008 ***** ** *** *** ** PROGRAM STARTED ON shizuwo ** **** ****** PROGRAM STARTED BY ***** ** ** ** ** PROGRAM PROCESS ID 27227 **** ** ******* ** PROGRAM STARTED IN /home/robechan/cp2k_new2/cp2k/tests/E P CP2K| version string: CP2K version 2.0.0 (Development Version) CP2K| is freely available from http://cp2k.berlios.de/ CP2K| Program compiled at Wed Oct 22 15:11:53 JST 2008 CP2K| Program compiled on shizuwo CP2K| Program compiled for TEST_64_2_ifort10_mkl10 CP2K| Last CVS entry xc_xwpbe.F/1.12/Tue Aug 26 23:46:48 2008 CP2K| Input file name 3H2O-ep.inp GLOBAL| Force Environment number 1 GLOBAL| Basis set file name BASIS_SET GLOBAL| Potential file name POTENTIAL GLOBAL| MM Potential file name MM_POTENTIAL GLOBAL| Coordinate file name __STD_INPUT__ GLOBAL| Method name CP2K GLOBAL| Project name H2O GLOBAL| Preferred FFT library FFTW3 GLOBAL| Run type MD GLOBAL| All-to-all communication in single precision F GLOBAL| FFTs using library dependent lengths F GLOBAL| Global print level 1 GLOBAL| Total number of message passing processes 1 GLOBAL| Number of threads for this process 1 GLOBAL| This output is from process 0 15:24:26 NOTE in ep_methods:ep_env_init_low ep_methods:ep_env_init_low creating main_qs_env ------------------------------------------------------------------------------- The segmentation occurs because the programs is probably looking for something and does not find it any idea ? Thanks Roberto |
The segmentation occurs because the programs is probably looking for something and does not find it any idea ?
| I used Intel ifort 10.0.025 Then I compiled openmpi-1.2.2 with this compiler and then the produced mpif90 was used for the compilation of cp2k Do you think the BLACS and Scalapack I used do not work with this compiler ? R. --- Mer 22/10/08, Laino Teodoro <teodor...@gmail.com> ha scritto: Da: Laino Teodoro <teodor...@gmail.com> |
| I eventually managed to solve the problem and fix it. The delicate point in the linkage. We should be careful to to avoid the use of the ILP version of the MKL library, such as /mkl/10.0.1.014/lib/em64t/libmkl_blacs_openmpi_ilp64.a and replace it with the *most recommended* LP version as follows /mkl/10.0.1.014/lib/em64t/libmkl_blacs_openmpi_lp64.a For more details I strongly recommend to have a look at the following www site http://www.unix.org/version2/whatsnew/lp64_wp.html Roberto --- Mer 22/10/08, Axel <akoh...@gmail.com> ha scritto: Da: Axel <akoh...@gmail.com> |