Commit Graph

19 Commits

Author SHA1 Message Date
cavazzon 93b9cb2a73 - cleanup
- MPI_BARRIER to avoid possible interference between two call
  to sqr_mm_cannon. Not really sure if it is really necessary,
  for sure it helps in case of "buggy" MPI library.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4061 c92efa57-630b-4861-b058-cf58834340f0
2007-07-24 21:44:18 +00:00
dalcorso 2a8b254cc8 The ph.x, bands.x and pp.x now check that pw.x has been run with the same
number of processors.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4051 c92efa57-630b-4861-b058-cf58834340f0
2007-07-21 16:25:09 +00:00
giannozz 45ae58d60b All occurrences of d0, d+N, d-N, replaced with fortran-90 style _DP.
Please do not re-introduce old-style syntax. A uniform syntax allows
if the need arises to change the precision in less than no time.
Courtesy of Pascal Thibeaudeau. Modules/ directory only.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3964 c92efa57-630b-4861-b058-cf58834340f0
2007-06-11 17:13:15 +00:00
cavazzon eab09a43f7 - task groups, clean ups and bugs fix
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3610 c92efa57-630b-4861-b058-cf58834340f0
2006-12-17 23:11:16 +00:00
cavazzon 5d3881262a - Task Groups parallelization strategy for CP
generalized to all architectures


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3608 c92efa57-630b-4861-b058-cf58834340f0
2006-12-16 17:27:33 +00:00
cavazzon fb91fb4335 - ortho rewritten to use distributed matrixes in the iteration cycle.
This will save memory for large system with thousands of electrons.
- Parallel matrix multiplication using low network traffic Cannon's algorithm
- New processors subgroup to be used with ortho, infact Cannon's alg.
  uses only square number of procs: 1, 4, 9, 16, 25, ...
- The performance of matrix multiplication are mesured, and the best
  processor number is choosen.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3459 c92efa57-630b-4861-b058-cf58834340f0
2006-10-16 20:50:48 +00:00
cavazzon c021112ee3 - Cray XD1 workaround for large communication
- BGL porting of CP almost complete. New command
  line argument "-ntask_groups" to specify the
  number of task group used in parallelization.
  to generate an executable with BGL extensions,
  in the file make.sys the macro __BGL should
  be specified.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@3069 c92efa57-630b-4861-b058-cf58834340f0
2006-05-03 14:19:57 +00:00
cavazzon 26987d2472 - init_pool moved to mp_global (it is now used by CP too)
- further changes to support image parallelization in CP
- bug fix in XML save file for wave functions / charge density / pools .
  In siple case and combinations of procs and polls now it seem to work.
  More testing is required


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2963 c92efa57-630b-4861-b058-cf58834340f0
2006-03-26 17:14:44 +00:00
cavazzon cff1f9680c - static arrays dimensioned with natx removed
- nproc substituted with nproc_image
- mpime substituted with me_image
- roor substituted with root_image
- some clean-ups


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2960 c92efa57-630b-4861-b058-cf58834340f0
2006-03-24 18:51:06 +00:00
cavazzon 69dcecd8cf - adding Task Groups fft driver (Blue Gene)
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2893 c92efa57-630b-4861-b058-cf58834340f0
2006-03-09 09:57:03 +00:00
cavazzon c7bd96d697 - changes needed for blue gene porting
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2867 c92efa57-630b-4861-b058-cf58834340f0
2006-03-05 23:02:36 +00:00
ballabio d214f05b60 last end subroutine --> end subroutine name [Gerardo]
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1874 c92efa57-630b-4861-b058-cf58834340f0
2005-05-18 14:02:51 +00:00
sbraccia 16580a3320 Small cleanup. C.S.
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1417 c92efa57-630b-4861-b058-cf58834340f0
2004-11-03 14:21:36 +00:00
cavazzon c5b0bc684d - shmem_include only used if __SHMEM macro is defined
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1341 c92efa57-630b-4861-b058-cf58834340f0
2004-09-27 11:05:47 +00:00
sbraccia 2d0f907723 Fourier String Method Dynamics improved: the number of fourier modes used to represent the path are gradually included (starting from one up to num_of_images-2), so that the overall number of scf loops needed to reach convergence is considerably reduced (of a factor of 2-3).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1339 c92efa57-630b-4861-b058-cf58834340f0
2004-09-27 09:17:48 +00:00
sbraccia 30f8c1fea0 Fixed several bugs in the routines for "path-optimization":
"reset_vel" input variable was read but not used
parallelization on images was not properly working
clueanup in the way ATOMIC_POSITIONS card is read.
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@1151 c92efa57-630b-4861-b058-cf58834340f0
2004-08-23 06:51:19 +00:00
sbraccia 7359b6ca2f The array of communicators was non necessary (thanks to SdG): removed everywhere.
Fixed a serious bug in para.f90 (introduced in the last commit).
C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@744 c92efa57-630b-4861-b058-cf58834340f0
2004-03-24 16:30:44 +00:00
sbraccia 2a99b6fdac 1) An experimental parallelization of NEB images has been implemented.
This required a deep modification of the parallelism in PWscf:
there are two new communicators (intra_image_comm and inter_image_comm) and the
existing "pool" communicators (intra_pool_comm and inter_pool_comm) are now vectors
of length given by the number of parallel images. #ifdef __PARA is no longer
needed because all "parallel" variables are always initialized for a serial run
and all parallel routines are, in the case of a serial run, dummy routines.
The wrappers to MPI routines used only by PWscf are in the PW/para.f90 file.
The others (mp_***) are in the Modules/mp.f90. All explicit referencies to mpif.h
should be replaced by an "USE parallel_include" (in a serial run parallel_include
is simply a dummy module).

2) The extrapolation of both potential and wavefunctions has been rewritten in
order to be smarter than before: on the basis of the required extrapolation
order, on the basis of the history and on the basis of which files are really
present on the disk, the algorithm chooses the extrapolation order.
All the algorithms in which ions are moved can use the extrapolation.

These are both unstable features: I need the help of everybody to test them.

C.S.


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@742 c92efa57-630b-4861-b058-cf58834340f0
2004-03-24 09:36:50 +00:00
giannozz ac9f2144c0 O-sesame
git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@2 c92efa57-630b-4861-b058-cf58834340f0
2003-01-19 21:58:50 +00:00