From 8f6bdc6ab8c9d01961fa0b3024a1969c6cb7877f Mon Sep 17 00:00:00 2001 From: Rob Falgout Date: Fri, 23 Jun 2023 05:01:41 -0700 Subject: [PATCH] Release 2.29.0 (#936) --- CHANGELOG | 16 ++++++++++++++++ src/CMakeLists.txt | 6 +++--- src/config/configure.in | 6 +++--- src/config/version.sh | 4 ++-- src/configure | 24 ++++++++++++------------ src/docs/ref-manual/conf.doxygen | 2 +- src/docs/usr-manual/conf.py | 6 +++--- src/parcsr_ls/par_interp_device.c | 3 ++- src/seq_mv/protos.h | 3 ++- src/seq_mv/seq_mv.h | 3 ++- 10 files changed, 46 insertions(+), 27 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index eed351698..82ae1c06e 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -7,6 +7,22 @@ # This file chronicles user-level changes, beginning with the most recent. # ============================================================================= +Version 2.29.0 released 2023/06/22 + +- Added ILU support for AMD GPUs +- Added new error handling feature to print messages to a memory buffer +- Enabled more support with SYCL: MGR, AMS/ADS/ADE, AIR, ... +- Added MAGMA support +- Added support for CUDA 12 +- Added HYPRE_Initialized/HYPRE_Finalized functions +- Ported MGR features to CUDA and HIP: Non-Galerkin options, block diagonal + interpolation, and block Jacobi relaxation +- Added non-UVM device support for ILU and MGR +- Added cuSOLVER and rocSOLVER support +- Various bug fixes + +#==================================== + Version 2.28.0 released 2023/03/17 - Added new Gaussian elimination options for F-relaxation in MGR. diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ec8fcc1de..dabcb35ef 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -12,9 +12,9 @@ else () endif () # The version number. -set(HYPRE_VERSION 2.28.0) -set(HYPRE_NUMBER 22800) -set(HYPRE_DATE 2023/03/17) +set(HYPRE_VERSION 2.29.0) +set(HYPRE_NUMBER 22900) +set(HYPRE_DATE 2023/06/22) set(HYPRE_TIME 00:00:00) set(HYPRE_BUGS https://github.com/hypre-space/hypre/issues) set(HYPRE_SRCDIR "${PROJECT_SOURCE_DIR}") diff --git a/src/config/configure.in b/src/config/configure.in index e8d35c3cb..705a0e0fe 100644 --- a/src/config/configure.in +++ b/src/config/configure.in @@ -48,9 +48,9 @@ dnl * Set package information so it only has to be modified in one place dnl ********************************************************************* m4_define([M4_HYPRE_NAME], [hypre]) -m4_define([M4_HYPRE_VERSION], [2.28.0]) -m4_define([M4_HYPRE_NUMBER], [22800]) -m4_define([M4_HYPRE_DATE], [2023/03/17]) +m4_define([M4_HYPRE_VERSION], [2.29.0]) +m4_define([M4_HYPRE_NUMBER], [22900]) +m4_define([M4_HYPRE_DATE], [2023/06/22]) m4_define([M4_HYPRE_TIME], [00:00:00]) m4_define([M4_HYPRE_BUGS], [https://github.com/hypre-space/hypre/issues]) m4_define([M4_HYPRE_SRCDIR], [`pwd`]) diff --git a/src/config/version.sh b/src/config/version.sh index af8249088..ec25c8c5e 100755 --- a/src/config/version.sh +++ b/src/config/version.sh @@ -4,8 +4,8 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) -hypre_version="2.28.0" -hypre_reldate="2023/03/17" +hypre_version="2.29.0" +hypre_reldate="2023/06/22" hypre_major=`echo $hypre_version | cut -d. -f 1` hypre_minor=`echo $hypre_version | cut -d. -f 2` diff --git a/src/configure b/src/configure index 2e80ba9d1..d95048a7d 100755 --- a/src/configure +++ b/src/configure @@ -1,7 +1,7 @@ #! /bin/sh # From configure.in Id. # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for hypre 2.28.0. +# Generated by GNU Autoconf 2.71 for hypre 2.29.0. # # # Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, @@ -612,8 +612,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='hypre' PACKAGE_TARNAME='hypre' -PACKAGE_VERSION='2.28.0' -PACKAGE_STRING='hypre 2.28.0' +PACKAGE_VERSION='2.29.0' +PACKAGE_STRING='hypre 2.29.0' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1474,7 +1474,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures hypre 2.28.0 to adapt to many kinds of systems. +\`configure' configures hypre 2.29.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1540,7 +1540,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of hypre 2.28.0:";; + short | recursive ) echo "Configuration of hypre 2.29.0:";; esac cat <<\_ACEOF @@ -1907,7 +1907,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -hypre configure 2.28.0 +hypre configure 2.29.0 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -2252,7 +2252,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by hypre $as_me 2.28.0, which was +It was created by hypre $as_me 2.29.0, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -3233,9 +3233,9 @@ ac_config_headers="$ac_config_headers HYPRE_config.h:config/HYPRE_config.h.in" HYPRE_NAME="hypre" -HYPRE_VERSION="2.28.0" -HYPRE_NUMBER=22800 -HYPRE_DATE="2023/03/17" +HYPRE_VERSION="2.29.0" +HYPRE_NUMBER=22900 +HYPRE_DATE="2023/06/22" HYPRE_TIME="00:00:00" HYPRE_BUGS="https://github.com/hypre-space/hypre/issues" HYPRE_SRCDIR="`pwd`" @@ -11886,7 +11886,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by hypre $as_me 2.28.0, which was +This file was extended by hypre $as_me 2.29.0, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -11950,7 +11950,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -hypre config.status 2.28.0 +hypre config.status 2.29.0 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff --git a/src/docs/ref-manual/conf.doxygen b/src/docs/ref-manual/conf.doxygen index 840f596a9..ba8409eb8 100644 --- a/src/docs/ref-manual/conf.doxygen +++ b/src/docs/ref-manual/conf.doxygen @@ -48,7 +48,7 @@ PROJECT_NAME = hypre # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 2.28.0 +PROJECT_NUMBER = 2.29.0 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a diff --git a/src/docs/usr-manual/conf.py b/src/docs/usr-manual/conf.py index 9cc8cc213..08084e684 100644 --- a/src/docs/usr-manual/conf.py +++ b/src/docs/usr-manual/conf.py @@ -70,9 +70,9 @@ copyright = u'1998 Lawrence Livermore National Security, LLC and other HYPRE Pro # built documents. # # The short X.Y version. -version = '2.28.0' +version = '2.29.0' # The full version, including alpha/beta/rc tags. -release = '2.28.0' +release = '2.29.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -80,7 +80,7 @@ release = '2.28.0' # There are two options for replacing |today|: either, you set today to some # non-false value, then it is used: -today = 'March 17, 2023' +today = 'June 22, 2023' # Else, today_fmt is used as the format for a strftime call. #today_fmt = '%B %d, %Y' diff --git a/src/parcsr_ls/par_interp_device.c b/src/parcsr_ls/par_interp_device.c index 79274657f..67528b6e4 100644 --- a/src/parcsr_ls/par_interp_device.c +++ b/src/parcsr_ls/par_interp_device.c @@ -355,7 +355,8 @@ hypre_BoomerAMGBuildDirInterpDevice( hypre_ParCSRMatrix *A, hypre_TMemcpy(fine_to_coarse_h, fine_to_coarse_d, HYPRE_Int, n_fine, HYPRE_MEMORY_HOST, HYPRE_MEMORY_DEVICE); - hypre_ParCSRMatrixColMapOffd(P) = hypre_CTAlloc(HYPRE_BigInt, hypre_CSRMatrixNumCols(P_offd), HYPRE_MEMORY_HOST); + hypre_ParCSRMatrixColMapOffd(P) = hypre_CTAlloc(HYPRE_BigInt, hypre_CSRMatrixNumCols(P_offd), + HYPRE_MEMORY_HOST); hypre_GetCommPkgRTFromCommPkgA(P, A, fine_to_coarse_h, P_colids_h); diff --git a/src/seq_mv/protos.h b/src/seq_mv/protos.h index 383645904..4e634bbf6 100644 --- a/src/seq_mv/protos.h +++ b/src/seq_mv/protos.h @@ -101,7 +101,8 @@ HYPRE_Int hypre_CSRMatrixTriLowerUpperSolveCusparse(char uplo, HYPRE_Int unit_di HYPRE_Int hypre_CSRMatrixIntersectPattern(hypre_CSRMatrix *A, hypre_CSRMatrix *B, HYPRE_Int *markA, HYPRE_Int diag_option); HYPRE_Int hypre_CSRMatrixDiagScaleDevice( hypre_CSRMatrix *A, hypre_Vector *ld, hypre_Vector *rd); -HYPRE_Int hypre_CSRMatrixCompressColumnsDevice(hypre_CSRMatrix *A, HYPRE_BigInt *col_map, HYPRE_Int **col_idx_new_ptr, HYPRE_BigInt **col_map_new_ptr); +HYPRE_Int hypre_CSRMatrixCompressColumnsDevice(hypre_CSRMatrix *A, HYPRE_BigInt *col_map, + HYPRE_Int **col_idx_new_ptr, HYPRE_BigInt **col_map_new_ptr); HYPRE_Int hypre_CSRMatrixILU0(hypre_CSRMatrix *A); /* csr_matrix.c */ diff --git a/src/seq_mv/seq_mv.h b/src/seq_mv/seq_mv.h index 482dccedb..fd42ed9d7 100644 --- a/src/seq_mv/seq_mv.h +++ b/src/seq_mv/seq_mv.h @@ -377,7 +377,8 @@ HYPRE_Int hypre_CSRMatrixTriLowerUpperSolveCusparse(char uplo, HYPRE_Int unit_di HYPRE_Int hypre_CSRMatrixIntersectPattern(hypre_CSRMatrix *A, hypre_CSRMatrix *B, HYPRE_Int *markA, HYPRE_Int diag_option); HYPRE_Int hypre_CSRMatrixDiagScaleDevice( hypre_CSRMatrix *A, hypre_Vector *ld, hypre_Vector *rd); -HYPRE_Int hypre_CSRMatrixCompressColumnsDevice(hypre_CSRMatrix *A, HYPRE_BigInt *col_map, HYPRE_Int **col_idx_new_ptr, HYPRE_BigInt **col_map_new_ptr); +HYPRE_Int hypre_CSRMatrixCompressColumnsDevice(hypre_CSRMatrix *A, HYPRE_BigInt *col_map, + HYPRE_Int **col_idx_new_ptr, HYPRE_BigInt **col_map_new_ptr); HYPRE_Int hypre_CSRMatrixILU0(hypre_CSRMatrix *A); /* csr_matrix.c */