1. 30 May, 2016 1 commit
  2. 18 May, 2016 1 commit
  3. 23 Apr, 2016 1 commit
  4. 24 Feb, 2016 2 commits
    • Andreas Marek's avatar
      Add migration notice · 31a03aa2
      Andreas Marek authored
      31a03aa2
    • Andreas Marek's avatar
      Optional build of ELPA without MPI · 49f119aa
      Andreas Marek authored
      The configure flag "--enable-shared-memory-only" triggers a build
      of ELPA without MPI support:
      
      - all MPI calls are skipped (or overloaded)
      - all calls to scalapack functions are replaced by the corresponding
        lapack calls
      - all calls to blacs are skipped
      
      Using ELPA without MPI gives the same results as using ELPA with 1 MPI
      task!
      
      This version is not yet optimized for performance, here and there some
      unecessary copies are done.
      
      Ths version is intended for users, who do not have MPI in their
      application but still would like to use ELPA on one compute node
      49f119aa
  5. 13 Jan, 2016 1 commit
  6. 05 Jan, 2016 1 commit
    • Andreas Marek's avatar
      Updated all variable types · 62a29931
      Andreas Marek authored
      All variables (real, integer, complex) are now declecared with the
      appropiate kind statement. The definition of the kind types is done
      in src/mod_precision.f90
      
      To ensure interoperability with C, the kind types are decleared via
      iso_c_binding to C variables
      62a29931
  7. 11 Dec, 2015 2 commits
  8. 10 Dec, 2015 3 commits
    • Andreas Marek's avatar
      Create doxygen documentation for ELPA · 927f988a
      Andreas Marek authored
      The user functions of ELPA are now documented with doxygen tags.
      At the moment the interface of ELPA 2015.11.001 is decribed.
      
      The documentation has step by step to be implemented for all functions
      and test programms.
      927f988a
    • Andreas Marek's avatar
      Split file elpa2.F90 into elpa2.F90 and elpa2_compute.F90 · 2998fac3
      Andreas Marek authored
      As in a previous commit for elpa1.F90, for automatic generation of
      documentation elpa2.F90 has been splitted in two files, in order to
      have a lean, easy-to-understand user interface:
      
      elpa2.F90
      the visible user functions, which provide the library calls.
      The usage is the same as before
      
      elpa2_compute.F90
      all internal routines, which are used by ELPA2, but which are never
      called external of the library by a user. These functions are now
      "hidden" in the module elpa2_compute, which is used by ELPA2.
      
      The procedures in elpa2_compute.F90 are identical to the ones in
      elpa2.F90 before this split commit. The only -- but quite a lot of them
      -- changes are intendation changes.
      2998fac3
    • Andreas Marek's avatar
      Split file elpa1.F90 into elpa1.F90 and elpa1_compute.F90 · 9710bf08
      Andreas Marek authored
      For automatic generation of documentation, the file elpa1.F90
      has been splitted into two files, in order to have a lean,
      easy-to-understand user interface:
      
      elpa1.F90
      the visible user functios, which provide the library calls.
      The usage is the same as always
      
      elpa1_compute.F90
      all internal routines, which are used by ELPA1 and ELPA2, but
      which are never called by the user. These functions are now "hidden"
      in the module elpa1_compute, which is used by ELPA1 and ELPA2.
      
      The procedures in elpa1_compute.F90 are identical to the ones in
      elpa1.F90 before this split commit. The only -- but lot of --
      changes are intendation.
      9710bf08
  9. 09 Dec, 2015 1 commit
  10. 08 Dec, 2015 1 commit
    • Alexander Heinecke's avatar
      first attempt to fix the bug which was rolled back in 402629d9. · b6ce5fd4
      Alexander Heinecke authored
      Current fix does as much blocking as possible, which should be
      beneficial from both a compute and communication point of view.
      
      Additionally, a second possible fix was added which just calls
      the blocked version if the local matrix has a sufficient size.
      This might create smaller and more messages at scale.
      b6ce5fd4
  11. 07 Dec, 2015 1 commit
    • Andreas Marek's avatar
      Bugfix in ELPA_2015.11.001, roll back of minor changes · 402629d9
      Andreas Marek authored
      For some matrix/block size combinations the real case of ELPA2
      crashes, e.g:
      
      mpiexec -n 1 ./elpa2_test_real 50 50 32
      
      leads to an error message
       ** On entry to DGEMM parameter number  3 had an illegal value
       and a crash.
      
      This only seems to happen with matrix size smaller than 64*64.
      he code path responsible for this has been identified, but the problem
      tself is not yet solved!
      
      The part of the code, which causes these crashes, has been switched on
      as default by Intel in commit fe63372d. The rest of the commit fe63372d
      seems to be fine, and is performance critical.
      
      As an intermediate step, the responsible code path is switched off again
      as default, this will be changed again once the underlying root cause
      has been solved.
      402629d9
  12. 11 Nov, 2015 1 commit
  13. 05 Nov, 2015 1 commit
  14. 03 Nov, 2015 1 commit
    • Andreas Marek's avatar
      Update of c test cases · 505004e7
      Andreas Marek authored
      The examples, how to invoke ELPA from a c program have been updated.
      There are now examples for ELPA1 and ELPA2 both real and complex case.
      The test cases are still with less functionality than their Fortran
      counter parts, they are just ment as a "proof-of-concept".
      505004e7
  15. 28 Oct, 2015 1 commit
    • Alexander Heinecke's avatar
      This commit improves ELPA's performance on Intel(R) Xeon(R) E5v2 and E5v3 series CPUs by: · fe63372d
      Alexander Heinecke authored
      - enabling fusing iterations of stage 5 in ELPA2 for every configuration
      - Changed reduction bandwidth in ELPA2 to be at least 64
      - partial OpenMP parallelization of the QR factorization in bandred_real
      - OpenMP parallelization of SYMM
      - OpenMP parallelization of SYR2K in bandred_real
      - OpenMP parallelization for elpa1_reduce_add_vectors and elpa1_transpose_vectors
      - AVX2 support in backtransformation elpa2_kernels (FMA3 instructions introduced with Haswell microarchitecture)
      fe63372d
  16. 16 Jun, 2015 3 commits
  17. 28 May, 2015 1 commit
  18. 26 May, 2015 1 commit
    • Andreas Marek's avatar
      Remove potential memory leak in ELPA · 3a623dd3
      Andreas Marek authored
      Andreas Gloess informed us about a memory leak in ELPA, which was
      introduced in version 2013.11.008.
      
      This memory leak is removed now again.
      
      Note, that older versions of ELPA will not be fixed right now.
      3a623dd3
  19. 09 Mar, 2015 2 commits
  20. 06 Mar, 2015 2 commits
  21. 03 Mar, 2015 1 commit
    • Andreas Marek's avatar
      New ELPA 2015.02.001 release · c13fcc7b
      Andreas Marek authored
      If the user chooeses parameters for the QR-decomposition which are
      not allowed an error has been produced. This error is caught now,
      and the library aborts with a message
      
      It is now possible to switch on more debug messages via
      the environment variable "ELPA_DEBUG_MESSAGES=yes"
      c13fcc7b
  22. 11 Feb, 2015 2 commits
    • Andreas Marek's avatar
      Error in BGQ kernel detection · 0b19d06a
      Andreas Marek authored
      Error in configure test program fixed
      0b19d06a
    • Andreas Marek's avatar
      Abort on error in QR-decomposition · ff13970b
      Andreas Marek authored
      If the QR-decomposition is used wrongly (matrix size is not a
      multiple of block size) the the execution will abort, in
      order to prevent the wrong results, discussed in a previous commit
      
      Debug messages are now available by setting the environment variable
      "ELPA_DEBUG_MESSAGES" to "yes".
      ff13970b
  23. 03 Feb, 2015 1 commit
    • Andreas Marek's avatar
      Partial roll-back of ELPA_2015.02.001 release · 3d880b65
      Andreas Marek authored
      We found a bug in the QR-decomposition, which appears for
      some matrix sizes and produces wrong results!
      
      If the QR decomposition is switched on, an appropiate warning
      is shown.
      
      This bug is still under investigation
      3d880b65
  24. 02 Feb, 2015 1 commit
  25. 29 Jan, 2015 1 commit
  26. 28 Jan, 2015 2 commits
  27. 27 Jan, 2015 1 commit
  28. 25 Aug, 2014 1 commit
  29. 30 Jun, 2014 1 commit
    • Andreas Marek's avatar
      Another ABI change in ELPA_2014.06 pre-release · a2b2e6bf
      Andreas Marek authored
      Build servers recommend against calling "abort" functions in a
      library. Thus, from now on, ELPA  returns a success flag, which
      is a change of ABI!
      
      In order to force the user to honour this, the ELPA drivers
      are converted to functions, which implies an adaptation and
      rebuild of the user code. The driver functions return a
      logical "success", which, if it is false, indicates an
      error within the library.
      
      It is advised to check catch and check this
      return value in the user code, which calls ELPA.
      a2b2e6bf
  30. 12 Jun, 2014 1 commit