1. 21 Nov, 2018 1 commit
    • Pavel Kus's avatar
      changed logic of setting mpi communicators · f3144dd9
      Pavel Kus authored
      mpi_comm_parent is allways requred (it was not required before, but
      actually the code internals expected it to be supplied, at least for
      ELPA 2 calculation OR whenever GPU was used)
      f3144dd9
  2. 20 Nov, 2018 2 commits
  3. 15 Nov, 2018 1 commit
  4. 13 Nov, 2018 1 commit
  5. 27 Aug, 2018 3 commits
  6. 14 Aug, 2018 3 commits
  7. 13 Aug, 2018 1 commit
  8. 10 Aug, 2018 1 commit
  9. 08 Aug, 2018 1 commit
  10. 01 Aug, 2018 1 commit
    • Pavel Kus's avatar
      integration of C implementation of Cannon algorithm to ELPA · 3eb37776
      Pavel Kus authored
      this commit does not work, the generalized EVP problems fail from 2
      reasons:
      - Cannons algorithm does not work for the processor grid shape we use at
        the moment in tests (It only works if num. of process columns is a
        multiple of num. of process rows, which is not true in ELPA for 2 mpi
        tasks)
      - Cannons algorithm does not work as integrated to ELPA for larger
        matrices (not clear why at the moment)
      
      There are 2 new tests, which should work
      - test_cannon.c: it tests the new algorithm without going through
        Fortran, as it has been delivered
      - test_c_bindings: it tests transfering a 2D fortran matrix to C and
        back, as it is done with the cannons algorithm in the normal ELPA
        tests
      3eb37776
  11. 15 Jun, 2018 1 commit
  12. 12 Jun, 2018 1 commit
  13. 25 May, 2018 1 commit
  14. 24 May, 2018 1 commit
  15. 22 May, 2018 1 commit
  16. 11 May, 2018 2 commits
  17. 18 Apr, 2018 3 commits
  18. 05 Feb, 2018 5 commits
  19. 31 Jan, 2018 1 commit
  20. 03 Jan, 2018 1 commit
  21. 01 Dec, 2017 1 commit
  22. 28 Nov, 2017 1 commit
  23. 27 Nov, 2017 1 commit
  24. 07 Nov, 2017 3 commits
  25. 30 Oct, 2017 1 commit
  26. 26 Oct, 2017 1 commit
    • Lorenz Huedepohl's avatar
      First implementation of an autotuning procedure · 0ebe4802
      Lorenz Huedepohl authored
      To be used like this
      
         class(elpa_t), pointer      :: e
         class(elpa_autotune_t), pointer :: tune_state
      
         e => elpa_allocate()
         call e%set(...)
         [...]
         assert_elpa_ok(e%setup())
      
         tune_state => e%autotune_setup(ELPA_AUTOTUNE_FAST, ELPA_AUTOTUNE_DOMAIN_REAL)
      
         ! Autotuning loop, continues until all combinations have been tried
         do while (e%autotune_step(tune_state))
           ! Do the steps that are representative of your calculation
           call e%eigenvectors(a, ev, z, error)
         end do
      
         ! Fix best parameters, and de-allocate the autotune object
         call e%autotune_set_best(tune_state)
         call elpa_autotune_deallocate(tune_state)
      0ebe4802