-
Notifications
You must be signed in to change notification settings - Fork 88
Changelog
Terry Cojean edited this page Jun 4, 2024
·
206 revisions
This file only contains the currently unreleased functionality. For the complete Changelog of currently released functionality, please visit our CHANGELOG.md instead.
- The Ginkgo license header now uses the SPDX format. #1404
- Ginkgo changes the oneapi support to 2023.1+ #1396
- The
gko::dim
single-parameter constructor is nowexplicit
to avoid accidental conversion from integers #1474 - The CMake option
GINKGO_BUILD_HWLOC
is now set toOFF
by default, and if it is set toON
, thenHWLOC
is required to be available #1513.
-
gko::write_raw
now defaults to writing sparse output unless otherwise specified #1533 - Ginkgo now adheres to the
--prefix
option forcmake --install
, instead of overwriting it #1534
-
array::get_num_elems()
has been renamed toget_size()
#1400 -
matrix_data::ensure_row_major_order()
has been renamed tosort_row_major()
#1400 -
device_matrix_data::get_num_elems()
has been renamed toget_num_stored_elements()
#1400 - The CMake parameter
GINKGO_COMPILER_FLAGS
has been superseded byCMAKE_CXX_FLAGS
, andGINKGO_CUDA_COMPILER_FLAGS
has been superseded byCMAKE_CUDA_FLAGS
#1535 - The
std::initializer_list
overloads of matrixcreate
methods and constructors are deprecated in favor of explicitarray
parameters #1433
- The
device_reset
parameter of CUDA and HIP executors no longer has an effect, and itsallocation_mode
parameters have been deprecated in favor of theAllocator
interface. - The CMake parameter
GINKGO_BUILD_DPCPP
has been deprecated in favor ofGINKGO_BUILD_SYCL
. - The
gko::reorder::Rcm
interface has been deprecated in favor ofgko::experimental::reorder::Rcm
based onPermutation
. - The Permutation class'
permute_mask
functionality. - Multiple functions with typos (
set_complex_subpsace()
, range functions such asconj_operaton
etc). -
gko::lend()
is not necessary anymore. - The classes
RelativeResidualNorm
andAbsoluteResidualNorm
are deprecated in favor ofResidualNorm
. - The class
AmgxPgm
is deprecated in favor ofPgm
. - Default constructors for the CSR
load_balance
andautomatical
strategies - The PolymorphicObject's move-semantic
copy_from
variant - The templated
SolverBase
class. - The class
MachineTopology
is deprecated in favor ofmachine_topology
. - Logger constructors and create functions with the
executor
parameter. - The virtual, protected, Dense functions
compute_norm1_impl
,add_scaled_impl
, etc. - Logger events for solvers and criterion without the additional
implicit_tau_sq
parameter. - The global
gko::solver::default_krylov_dim
, use insteadgko::solver::gmres_default_krylov_dim
.
- Add a batched CG solver #1598, #1609
- Add a batched Jacobi (scalar/block) preconditioner, #1542, #1600
- Add an example for batched iterative solver #1553
- Add
add_scaled_identity
andscale_add
for batch matrix formats. #1528 - Add scaling for batch objects (matrix formats and multi-vectors). #1527
- Add a
batch::Csr
matrix format class and core and support for batched spmv kernels on CUDA, HIP and SYCL. #1450 - Add a script for comparing benchmark JSON outputs #1467
- Add an example for reordered preconditioned linear solver #1465
- Add single-value access functions
load_value
andstore_value
toarray
#1485 - Add the
BlockOperator
format to represent block-matrices #1435 - Add CUDA and HIP kernels for Reverse Cuthill McKee (RCM) reordering #1503
- Add FileConfig #1389, #1392, #1395, #1479, #1480, #1607
- Add Distributed Multigrid #1269 and coarsening method PGM #1403
- Add a mapping from simple Ginkgo types to native Kokkos types #1358
- Add a segmented array class #1545
- Add a class for mapping between global and local indexing #1543
- Ginkgo installation now has separate
Ginkgo_Runtime
andGinkgo_Development
components for easier packaging #1502 - The HIP backend now supports complex number operations for sparse matrices based on hipSPARSE #1538
- The
create
functions are now documented explicitly instead of using theEnableCreateMethod
mixin #1433 - The
solver
benchmark now supports Ginkgo's binary format for right-hand side vector inputs #1584 - The build system now uses native HIP support for CMake, which also provides support for ROCm 6.0 #1334
- The Multigrid solver generated from
distributed::Matrix
will use a global scalar Jacobi smoother and a GMRES solver as coarse grid solver #1612
- Compilation with libc++ was fixed #1463
- Fix the
__cplusplus
by_MSVC_LANG
in MSVC #1496 -
Coo::read(const T&)
andCsr::read(const T&)
will no longer overwrite the locally stored arrays and instead copy directly into them #1476 - Fix the interaction of
ProfilerHook::create(_nested)_summary
, executors and GPU timers, which lead to the summary not being printed #1509 - Fix compilation in environments where
CPATH
contains the current working directory #1531 - Fix read from matrix-market files with CR line endings #1557
- Fix undefined behavior that shows up with libstdc++ debug builds #1176
- Fix for CUDA 12.4 bug and METIS detection #1569
- Fix the pkgconfig installation with DESTDIR #1597
- Fix various issues causing build or test failures #1619
Tutorial: Building a Poisson Solver
- Getting Started
- Implement: Matrices
- Implement: Solvers
- Optimize: Measuring Performance
- Optimize: Monitoring Progress
- Optimize: More Suitable Matrix Formats
- Optimize: Using a Preconditioner
- Optimize: Using GPUs
- Customize: Loggers
- Customize: Stopping Criterions
- Customize: Matrix Formats
- Customize: Solvers
- Customize: Preconditioners