1. 28 Sep, 2016 1 commit
  2. 17 Aug, 2016 1 commit
  3. 05 Aug, 2016 1 commit
  4. 03 Aug, 2016 1 commit
  5. 29 Jun, 2016 1 commit
  6. 16 Jun, 2016 2 commits
  7. 14 Jun, 2016 2 commits
  8. 10 Jun, 2016 1 commit
  9. 30 May, 2016 2 commits
  10. 24 May, 2016 2 commits
  11. 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
  12. 13 Jan, 2016 1 commit
  13. 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
  14. 16 Dec, 2015 1 commit
    • Andreas Marek's avatar
      Add interface to unify C and Fortran names · bb046d1c
      Andreas Marek authored
      This commit does not change the interfaces defined in ELPA_2015.11.001 !
      All functionality is available via the interface names and definitions
      as in ELPA_2015.11.001
      
      But some new interfaces have been added, in order to unfiy the
      references from C and Fortran codes:
      
      - The procedures to create the ELPA (row/column) communicators are now
        available from C _and_ Fortran with the name "get_elpa_communicators".
        The old Fortran name "get_elpa_row_col_comms" and the old C name
        "elpa_get_communicators" are from now on deprecated but still available
      
      - The 1-stage solver routines are available from C _and_ Fortran via
        the names "solve_evp_real_1stage" and "solve_evp_complex_1stage".
        The old Fortran names "solve_evp_real" and "solve_evp_complex" are
        from now on deprecated but still functional.
      
      All documentation (man pages, doxygen, and example test programs) have
      been changed accordingly.
      
      This commit implies a change in the API versioning number, but no
      changes to codes calling ELPA (if they have been already updated to the
      API of ELPA_2015.11.001)
      bb046d1c
  15. 11 Dec, 2015 1 commit
  16. 10 Dec, 2015 2 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 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
  17. 05 Nov, 2015 1 commit
  18. 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
  19. 16 Jun, 2015 2 commits
  20. 28 May, 2015 1 commit
  21. 09 Mar, 2015 1 commit
    • Andreas Marek's avatar
      Change of get_elpa_row_col_comms to a function · fc80ad07
      Andreas Marek authored
      The procedure "get_elpa_row_col_comms" is now a function instead
      a subroutine and returns an error code.
      
      This should have been done previously when all the other ELPA
      function have been updated to return an error code.
      
      This requires an ABI change in the next ELPA release !
      fc80ad07
  22. 06 Mar, 2015 2 commits
  23. 27 Feb, 2015 1 commit
  24. 11 Feb, 2015 1 commit
    • 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
  25. 27 Jan, 2015 1 commit
  26. 25 Aug, 2014 1 commit
  27. 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
  28. 26 May, 2014 2 commits
  29. 15 Nov, 2013 1 commit
    • Andreas Marek's avatar
      ELPA_2013.11 release (minor version 000) · ea970032
      Andreas Marek authored
      This is the release of the ELPA_development_version_OpenMP
      If OpenMP support is not used, this version has the same
      functionality as ELPA_2013.08.
      
      If OpenMP support is used, obviously, a hybrid version of ELPA will be
      build.
      
      Allthough this is a release, version ELPA_2013.11 is far from complete!
      During the next week optimizations of the OpenMP part will be published,
      however, the basic functionality is set by this commit
      ea970032
  30. 28 Oct, 2013 2 commits
    • Andreas Marek's avatar
      Introducing OpenMP functionality in ELPA_development_version_OpenMP · 48e712ef
      Andreas Marek authored
      This commit introduces OpenMP functionality in the
      ELPA_development_version_OpenMP branch.
      
      It contains several bugfixes to the OpenMP functionality in the
      branch "ELPA_development_version", the later will soon be deleted
      since the new branch is the new reference implementation.
      
      The current branch contains the following features/bugfixes:
      - building of the OpenMP version of ELPA via configure and the
        "--with-openmp" flag. The build library contains a "_mt"
        (multi-threaded) in its name.
        The configure procedure should (hopefully) determine for each
        compiler the neccessary OpenMP flags.
        If the "--with-openmp" flag is ommitted exactly the same code
        as in the ELPA 2013.08.001 release is used and build in the
        same way
      - The example test cases print which kernels have been used and
        how many OpenMP threads are used at runtime
      - correct handling of OpenMP stack arrays: the previous implementation
        caused compiler dependent segmentation faults
      - OpenMP capability with all available kernels: the correctness of
        the computations have been checked for all kernels except the
        Bluegene (P/Q) versions
      48e712ef
    • Andreas Marek's avatar
      Creating of ELPA_development_version_OpenMP · bc9a3d07
      Andreas Marek authored
      Based on the ELPA 2013.08.001 a development version for ELPA OpenMP
      has been created
      bc9a3d07