1. 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
  2. 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
  3. 11 Nov, 2015 1 commit
  4. 05 Nov, 2015 1 commit
  5. 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
  6. 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
  7. 16 Jun, 2015 3 commits
  8. 28 May, 2015 1 commit
  9. 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
  10. 09 Mar, 2015 2 commits
  11. 06 Mar, 2015 2 commits
  12. 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
  13. 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
  14. 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
  15. 02 Feb, 2015 1 commit
  16. 29 Jan, 2015 1 commit
  17. 28 Jan, 2015 2 commits
  18. 27 Jan, 2015 1 commit
  19. 25 Aug, 2014 1 commit
  20. 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
  21. 12 Jun, 2014 2 commits
  22. 10 Jun, 2014 2 commits
  23. 06 Jun, 2014 1 commit
  24. 05 Jun, 2014 2 commits
  25. 28 May, 2014 1 commit
  26. 27 May, 2014 2 commits
  27. 26 May, 2014 3 commits
    • Andreas Marek's avatar
      ELPA_2014.06 prepare release · 53f2f2c6
      Andreas Marek authored
      Now it is possible
      - to choose the kernel (real and complex independently) at run-time
        via environment variables, or
      - to specify the kernel (real and complex independently) at runtime
        via specifing the kernel in the call to ELPA
      
      This has a few implications
      1) The ELPA 2014.06 release has a change in the API and is thus not
         binary compatible with previous versions
      2) if no kernels are specified, a default kernel is choosen
      3) if a wrong kernel is specified, a default kernel is choosen
      
      For sake of simplicity it is still possible to build ELPA with
      support for only one kernel, as in previous versions. However, it is
      still not binary compatible to previous versions
      53f2f2c6
    • Andreas Marek's avatar
      Prepare 2014.06.000: check for Fortran environment · c090a89f
      Andreas Marek authored
      Configure checks whether the Fortran environment module
      is available. If yes, the library is build such, that all
      messages (from within the library) are printed at the correct
      stderr unit. If not, then the stderr unit is set to unit=6
      c090a89f
    • Andreas Marek's avatar
      Cleanup of configure.ac ELPA_2013.11; Create ELPA_2014.06 · b3d47d1e
      Andreas Marek authored
      The configure.ac of ELPA_2013.11 is cleaned up a bit
      Also, ELPA_2013.11 is copied to ELPA_2014.06 in order to have
      the base for the next ELPA release
      b3d47d1e
  28. 03 Mar, 2014 1 commit