Commit Graph

42 Commits

Author SHA1 Message Date
Stefano De Gironcoli 75ea65a1a7 some more openMP do loop parallelization 2018-08-14 01:36:48 +02:00
Stefano de Gironcoli a241241d27 updated dependencies 2018-08-05 16:52:11 +02:00
Stefano de Gironcoli d936f16226 export_gstart_2_* and set_mpi_comm_4_* moved to LAXLIB
their call corrected in init_run and mp_global
a recently added bug in ppcg_k when npol=1 corrected
2018-08-05 16:52:11 +02:00
Paolo Giannozzi 7f32483fff IN all Makefiles, LIBS replaced by QELIBS, to prevent unlikely but not
impossible clashes with LIBS as defined by the OS or as used by the configure's
of external libraries (e.g. FoX, for which one such problem has been reported)
2018-07-11 19:58:41 +02:00
Pietro Bonfa 8457380d92 Aligned changes to touch-dummy removal. 2018-05-22 12:05:46 +02:00
anoop chandran cfb87ee875 wrong checkout corrected for removing eigsolv form make.depend 2018-03-06 17:09:08 +01:00
anoop chandran 808218aa57 removed ifdef from LAXlib makefile[?] 2018-03-06 16:09:48 +01:00
anoop chandran ec252e7ada corrections in the Makefiles(LAXlib,PW/src) to account for gpu_eignsolver 2018-02-28 16:07:06 +01:00
anoop chandran 71f224c6b8 added gpu eigensolver dep for object files 2018-02-28 15:58:22 +01:00
anoop chandran 99d38aa23d If compiling in GPU, append Eigenslover to MODFLAGS 2018-02-28 15:18:39 +01:00
Paolo Giannozzi 9cb7537fcb ELPA cleanup, following a suggestion by Ye Luo, Argonne: define
__ELPA_2015 for old interface,__ELPA_2016 for new interface.
__ELPA_2017 is a mix of the two and was removed. Configure updated accordingly.
First attempt to commit into branch "develop"
2018-02-05 17:16:07 +01:00
ccavazzoni b443e07f9f - interface with LAMMPS was broken in 6.2
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@14006 c92efa57-630b-4861-b058-cf58834340f0
2017-11-25 13:41:57 +00:00
giannozz 5d990d2b8f Cleanup of unused routines. There are 1001 different routines distributing
things across processors, maybe we should converge to a smaller number of them


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13979 c92efa57-630b-4861-b058-cf58834340f0
2017-11-02 17:31:15 +00:00
giannozz bb112e77a8 __OPENMP => _OPENMP (set by all OpenMP-aware compilers)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13951 c92efa57-630b-4861-b058-cf58834340f0
2017-10-25 07:32:10 +00:00
degironc b50e413216 in parallel diagonalization eigenvalues are broadcast to the whole
ortho_parent_comm, whatever it is



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13729 c92efa57-630b-4861-b058-cf58834340f0
2017-08-19 13:27:51 +00:00
degironc a8340b4d40 Duplicate routines cdiaghg and rdiaghg moved from KS_Solvers/XX to LAXlib.
Duplicate module mp_bands.f90 moved from KS_Solvers/XX to UtilXlib/mp_bands_util.f90
Makefiles and makedepend.sh updated
 
that should take care of the duplicate symbols




git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13712 c92efa57-630b-4861-b058-cf58834340f0
2017-08-08 21:44:44 +00:00
degironc 4636bca635 KS_Solvers directory has been created with three subdirectories:
KS_Solvers/CG, KS_Solvers/Davidson, KS_Solvers/Davidson_RCI.
Two are currently used by QE, the third one implements the Davidson
diagonalization within the Reverse Communication Interface paradigm,
courtesy of Micael Oliveira.

KS_Solvers routines depend only on lower level libraries, notably UtilXlib, 
LAXlib, (SCA)LAPACK, and BLAS.

reorganization can be improved. For instance some duplicated routines like
cdiaghg and rdiaghg could/should be moved in LAXlib. This could reduce the need
to include  KS_Solvers directories in the link step of many codes.    

Minimal changes to calling sequence have been made, essentially just adding
h_psi,s_psi,g_psi and h_1psi,s_1psi routines names as arguments (with a
specific calling sequence ihardcode inside the routines that agree with PWSCF one). 
This could be avoided adopting the RCI paradigm.

Compiled in serial and parallel, 177/182 pw tests passed (3 that were failing 
even before on my laptop pw-berry, pw-langevin, pw-pawatom + 2 unknown==not tested), 
12 /17 cp tests passed (some o2-us-para-pbe-X fail but the same was for the 
original version)

I assume the modified calling procedure is working and the problem lies somewhere else.
 
Randomly tested some examples in pw, ph, pwcond and it seams to work.

Please report any problem.





git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13644 c92efa57-630b-4861-b058-cf58834340f0
2017-07-29 12:19:19 +00:00
degironc fe8300299c mp_diag.f90 moved from Modules to LAXlib
dependencies updated


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13641 c92efa57-630b-4861-b058-cf58834340f0
2017-07-28 14:21:28 +00:00
giannozz ac97151f87 Patches by Pietro Bonfa' for new ELPA; configure updated
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13583 c92efa57-630b-4861-b058-cf58834340f0
2017-06-30 08:44:25 +00:00
spigafi 026f27d732 Missing object files
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13269 c92efa57-630b-4861-b058-cf58834340f0
2017-01-23 23:42:55 +00:00
spigafi ede7a95597 Disabled ELPA 2016.05.003, added new API for ELPA 2016.11.001_pre.
Configure does not detect the version, make sure you got the right one!


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13250 c92efa57-630b-4861-b058-cf58834340f0
2017-01-15 16:36:42 +00:00
giannozz 388e5e4b58 QE made ready to use MPI module instead of mpif.h include file. See the three
files Modules/parallel_include.f90, LAXlib/la_param.f90, FFTXlib/fft_param.f90
The latter two are now modules and are included as modules, no longer as files


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13183 c92efa57-630b-4861-b058-cf58834340f0
2016-11-25 14:11:28 +00:00
giannozz 21c33f5dbf All include 'mpif.h' replaced by a single one in la_param.f90, which is
already included anyway


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13176 c92efa57-630b-4861-b058-cf58834340f0
2016-11-24 06:38:42 +00:00
spigafi d90b14c2d1 ELPA "get_elpa_row_col_comms" returns integer, not boolean. Thanks Paulatto.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@13008 c92efa57-630b-4861-b058-cf58834340f0
2016-09-22 14:58:25 +00:00
spigafi 72f5c775d9 Ifdef preprocessor macro refactoring (LAXlib)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12975 c92efa57-630b-4861-b058-cf58834340f0
2016-09-18 14:59:03 +00:00
ccavazzoni e8b68bf663 - fixing ELPA interfaces
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12965 c92efa57-630b-4861-b058-cf58834340f0
2016-09-15 10:44:46 +00:00
spigafi ad5e1bf29e Modified ELPA calls to comply with new library API. Supported 2015.11.001
(__ELPA_2015) and 2016.05.003 (__ELPA_2016). Link must be done manually (for
now). Validated using PW AUSURF112 (GAMMA), PW AUSURF112 (K) ans PW GRIR443.
CP tests to be done. Internal self-compiled ELPA very old still present but it
will be deprecated soon.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12942 c92efa57-630b-4861-b058-cf58834340f0
2016-09-10 20:48:28 +00:00
ccavazzoni e1d0987b8e - improved network tests
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12925 c92efa57-630b-4861-b058-cf58834340f0
2016-09-07 12:07:59 +00:00
ccavazzoni 72fb117020 - improved network test
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12915 c92efa57-630b-4861-b058-cf58834340f0
2016-09-05 09:14:03 +00:00
ccavazzoni 92503eb2cd - small boxes fft variables placed in a separate datatype, and removed from fft type
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12671 c92efa57-630b-4861-b058-cf58834340f0
2016-08-06 09:09:42 +00:00
ccavazzoni b2f8f3f456 - fixed small inconsistency (not really a bug)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12631 c92efa57-630b-4861-b058-cf58834340f0
2016-08-01 10:36:46 +00:00
ccavazzoni de2a01c4e6 - Task groups variables moved form FFT type to a new data type
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12626 c92efa57-630b-4861-b058-cf58834340f0
2016-07-29 14:25:22 +00:00
giannozz 02ce4df8d6 make.sys => make.inc. All other codes using make.sys should modify their build
mechanism accordingly.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12539 c92efa57-630b-4861-b058-cf58834340f0
2016-06-25 07:26:50 +00:00
ccavazzoni f2812ffd7d - remove a dead-lock bug
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12538 c92efa57-630b-4861-b058-cf58834340f0
2016-06-24 16:02:12 +00:00
ccavazzoni 02b04a53f9 - adding poor man performance measurments for: Floating point, network bandwidth, network latency
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12534 c92efa57-630b-4861-b058-cf58834340f0
2016-06-23 16:27:37 +00:00
giannozz df30a665aa Explicit preprocessing produces *_tmp.f90 files instead of *.F90 files, to
prevent trouble with OS-X. May or may not work (it won't unless configure
is updated: please somebody with v.2.63 of autoconf do it), may turn out to
be obsolete anyway.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12364 c92efa57-630b-4861-b058-cf58834340f0
2016-04-27 14:53:38 +00:00
giannozz 9e024fe28c Obsolete __ESSL preprocessing flag removed (there are no more IBM AIX machines
for scientific computing), only __LINUX_ESSL left


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12358 c92efa57-630b-4861-b058-cf58834340f0
2016-04-25 20:05:24 +00:00
ccavazzoni 0359fd948f - adding timing for matrix multiplication,
and an estimation of the sustained GFlops for the given matrix size


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12132 c92efa57-630b-4861-b058-cf58834340f0
2016-02-14 22:20:11 +00:00
timrov 707e58243f TDDFPT routines, which compute the response density, now use the original PH routines, which allows us to delete the duplicated parts of the code. Some documentation of the PH routines.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12120 c92efa57-630b-4861-b058-cf58834340f0
2016-02-14 12:41:19 +00:00
ccavazzoni 1f2cd6fa4a - adding command line parameter "-n" to specify the matrix size
- adding a short explanation.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12119 c92efa57-630b-4861-b058-cf58834340f0
2016-02-13 19:30:39 +00:00
ccavazzoni 023d18237b - Scalapack context parameter added to the linear algebra descriptor
- Linear Algebra Library self testing program, now performs
  a matrix diagonalization and print out diagonalization timing.
  It can be useful to select the best low level library and/or the 
  best number of processors to be used for linear algebra.
  More validation, auto-testing and performance assesment will follow



git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12114 c92efa57-630b-4861-b058-cf58834340f0
2016-02-12 09:41:25 +00:00
ccavazzoni b8b48f8df6 - new Linear Algebra library
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@12053 c92efa57-630b-4861-b058-cf58834340f0
2016-01-23 16:34:07 +00:00