1. 06 Mar, 2016 1 commit
  2. 04 Mar, 2016 1 commit
  3. 02 Mar, 2016 1 commit
  4. 26 Feb, 2016 1 commit
  5. 15 Feb, 2016 2 commits
  6. 12 Feb, 2016 1 commit
  7. 09 Feb, 2016 1 commit
  8. 04 Feb, 2016 1 commit
  9. 03 Feb, 2016 1 commit
  10. 02 Feb, 2016 1 commit
  11. 26 Jan, 2016 1 commit
  12. 24 Jan, 2016 1 commit
  13. 23 Jan, 2016 2 commits
  14. 20 Jan, 2016 2 commits
  15. 13 Jan, 2016 1 commit
  16. 08 Jan, 2016 1 commit
  17. 05 Jan, 2016 1 commit
  18. 02 Jan, 2016 2 commits
  19. 22 Dec, 2015 1 commit
  20. 16 Dec, 2015 2 commits
  21. 15 Dec, 2015 2 commits
  22. 01 Dec, 2015 1 commit
  23. 28 Nov, 2015 1 commit
  24. 25 Nov, 2015 1 commit
  25. 23 Nov, 2015 2 commits
  26. 21 Nov, 2015 4 commits
  27. 19 Nov, 2015 1 commit
  28. 07 Nov, 2015 1 commit
    • degironc's avatar
      · 92912d81
      degironc authored
       band group parallelization slightly modified to make it more flexible, and little
      more efficient.
      
       subroutine init_index_over_band ( comm, nbnd ) that set ibnd_start and ibnd_end
      variables requiring comm=inter_bgrp_comm is removed and replaced by
       subroutine set_bgrp_indices ( nbnd, ibnd_start, ibnd_end ) implementing the same
      relationships between its arguments but:
       
       - forcing the use of inter_bgrp_comm from the same mp_bands module,
      
       - returning ibnd_start and ibnd_end as explicit outputs that are not anymore kept
      in the module. In this way other quantities can be distributes if needed in any 
      given routine without too many non-local effects.
      
       For compatibility with TDDFPT, that uses the bgrp parallelization and loads
      ibnd_start/ibnd_end trhough mp_global module, these two variables are moved in 
      a dedicated module mp_bands_TDDFPT included in Module/mp_bands.f90. This is done
      to avoid too much invasive changes in a code i don't know well. In this way the 
      needed changes are very localized and transparent, the code compiles correctly 
      so I think it should work exactly as before. 
      In my opinion the two variables should be moved somewhere inside TDDFPT.
      
       Band parallelization is extended to h_psi(lda,n,m,psi,hpsi) and s_psi routines 
      (only when .not.exx_is_active because otherwise it is already used inside vexx)
      for generic values of m (of course it gives a speedup only when m is not too small
      compared to nbgrp but it works also if m < nbgrp ).
      
       Compatibility with task groups has not be explored but should not be conceptually
      different from how it works in the exx case.
      
      
      git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@11835 c92efa57-630b-4861-b058-cf58834340f0
      92912d81
  29. 06 Nov, 2015 1 commit
  30. 05 Nov, 2015 1 commit