Releases: JuliaSmoothOptimizers/Krylov.jl
Releases · JuliaSmoothOptimizers/Krylov.jl
v0.9.8
Krylov v0.9.8
Merged pull requests:
- Remove old macros (#907) (@amontoison)
- Add a function knorm_elliptic (#909) (@amontoison)
- Improve the matrix-free example with FFT (#912) (@amontoison)
- Fix block_gmres on GPUs (#914) (@amontoison)
Closed issues:
v0.9.7
Krylov v0.9.7
Merged pull requests:
- Add
cgls-shift
algorithm (#853) (@tmigot) - Support preconditioners in BiLQ and QMR (#862) (@amontoison)
- Add tests with LinearOperators.jl (#863) (@amontoison)
- Don't use the macro @. (#864) (@amontoison)
- Fix copy_triangle for Julia 1.11 (#866) (@amontoison)
- Fix preconditioning in
cg
when optionalradius
argument is positive (#868) (@mpf) - Fix download count badge (#869) (@pricklypointer)
- Use GHA to test on Apple Silicon (#871) (@amontoison)
- Update test_allocations.jl (#872) (@amontoison)
- Update Aqua.yml (#873) (@amontoison)
- Bump actions/download-artifact from 3 to 4.1.7 in /.github/workflows (#874) (@dependabot[bot])
- Validate CITATION.cff (#875) (@tmigot)
- [Buildkite] Update pipeline.yml (#877) (@amontoison)
- Test block-GMRES on GPUs (#878) (@amontoison)
- Update the documentation (#879) (@amontoison)
- [documentation] Add an example with RandomizedPreconditioners.jl (#880) (@amontoison)
- [documentation] Update preconditioners.md (#881) (@amontoison)
- [documentation] Add a matrix-free example with FFTW.jl (#883) (@amontoison)
- Add a reference for USYMQR (#885) (@amontoison)
- Use metaprogramming to generate out-of-place methods (#887) (@amontoison)
- [documentation] Replace IncompleteLU.jl by KrylovPreconditioners.jl (#889) (@amontoison)
- Improve type inference of extract_parameters (#890) (@amontoison)
- Define cg_lanczos_shift with metaprogramming (#892) (@amontoison)
- Use metaprogramming to generate more out-of-place methods (#893) (@amontoison)
- Generate all out-of-place methods in krylov_solve.jl (#894) (@amontoison)
- [documentation] Improve the matrix-free example with FFT (#895) (@amontoison)
- Add a macro kfill! (#897) (@amontoison)
- Swap the arguments in the macro kcopy! (#898) (@amontoison)
- Use the macro kcopy! instead of broadcast (#899) (@amontoison)
- Improve the docstrings of block-Krylov processes (#900) (@amontoison)
- Specify that memory is an optional argument for some KrylovSolvers (#901) (@amontoison)
- [documentation] Improve the structure of matrix_free.md (#903) (@amontoison)
Closed issues:
- Use 5-argument mul! (#353)
- Add documentation about memory parameter (#521)
- convert function for solvers (#585)
- Use
Real
as FC instead ofAbstractFloat
? (#646) - ReshapedArrays support (#770)
- Download badge is broken (#851)
block_gmres
fails withLinearOperator
(#854)- Add tests with LinearOperators.jl (#861)
- Possible support for Dual types for Automatic Differentiation (#870)
- Use metaprogramming to generate all out-of-place methods (#888)
v0.9.6
Krylov v0.9.6
Merged pull requests:
- Add comments about using block-GMRES on GPUs (#844) (@amontoison)
- [documentation] KrylovOperator -- optimized sparse products on NVIDIA and AMD GPUs (#848) (@amontoison)
- Add copyto! for KrylovStats (#849) (@amontoison)
- Update CITATION.cff (#852) (@tmigot)
- Update ci.yml (#857) (@amontoison)
- Support ComponentArrays.jl in Krylov.jl (#859) (@amontoison)
Closed issues:
v0.9.5
Krylov v0.9.5
Merged pull requests:
- [documentation] AMDGPU.jl supports rocSPARSE (#781) (@amontoison)
- [MINARES] Fix warm-start (#794) (@amontoison)
- Fix a typo in test/gpu/amd.jl (#796) (@amontoison)
- [documentation] Update the section about AMD GPUs (#798) (@amontoison)
- Improve the function hermitian_lanczos (#799) (@amontoison)
- Block-Krylov processes (#800) (@amontoison)
- Add an option reorthogonalization for two processes (#803) (@amontoison)
- Update the pseudocode of the Krylov processes (#805) (@amontoison)
- [documentation] Explain the transpose-free variant of the non-Hermitian Lanczos process (#807) (@amontoison)
- Update paper.md (#809) (@danielskatz)
- Fix the issue with the adjoint in JOSS (#810) (@amontoison)
- [documentation] Update Documenter.jl (#811) (@amontoison)
- Update Krylov processes to return more arguments (#813) (@amontoison)
- [JOSS] Update CITATION.cff and DOI badge (#815) (@amontoison)
- [JOSS] Add a BibTeX entry (#817) (@amontoison)
- Update CITATION.cff (#818) (@amontoison)
- Add a DOI link for CAR and MINARES (#820) (@amontoison)
- Test view of AMD GPUs (#823) (@amontoison)
- Update pipeline.yml (#829) (@amontoison)
- [documentation] Add a reference for CRAIG (#834) (@amontoison)
- Add compat entries for Test and Random (#835) (@amontoison)
- Add an implementation of BLOCK-GMRES (#840) (@amontoison)
- Release 0.9.5 (#841) (@amontoison)
Closed issues:
- [documentation] Update GPU support (#627)
- Solve matrix-matrix problem (#759)
- Add an option reorthogonalization for the processes (#801)
- Question for GPU computation: lots of time on vector products (#822)
- Automatically promote
atol
andrtol
toeltype(b)
(#828) - Move Block-GMRES in Krylov.jl (#831)
- Add a reference for CRAIG (#833)
v0.9.4
Krylov v0.9.4
Closed issues:
- GPU Example is broken (#754)
- GMRES Convergence Without Meeting atol/rtol (#774)
- Add an example and a test for the CuSparseMatrixCOO format (#775)
Merged pull requests:
- [documentation] Update tips.md (#777) (@amontoison)
- [documentation] Improve preconditioners.md (#778) (@amontoison)
- [documentation] Add an example with CuSparseMatrixCOO (#779) (@amontoison)
- Update paper.md (#785) (@amontoison)
- An implementation of CAR (#786) (@amontoison)
- An implementation of MINARES (#787) (@amontoison)
- Remove .zenodo.json (#788) (@amontoison)
- Add an example for MINARES (#789) (@amontoison)
- Release 0.9.4 (#790) (@amontoison)
- CITATION.bib -> CITATION.cff (#791) (@amontoison)
v0.9.3
Krylov v0.9.3
Closed issues:
- GPU scalar indexing when using LsmrSolver (ERROR: LoadError: Scalar indexing is disallowed.) (#764)
Merged pull requests:
- [JOSS] Review comments of LeilaGhaffari (#765) (@amontoison)
- StaticArrays support (#768) (@amontoison)
- Release 0.9.3 (#772) (@amontoison)
v0.9.2
Krylov v0.9.2
Closed issues:
ktypeof(::AbstractVector)
is breaking between 0.9.0 and 0.9.1 (#749)- Optimize the function solve! (#751)
Merged pull requests:
- Improve the reliability of solver.stats.timer (#748) (@amontoison)
- Optimize the generic function solve! (#752) (@amontoison)
- [CI] Remove the build with Linux ARM (#753) (@amontoison)
- Use metaprogramming to reduce the code (#755) (@amontoison)
- Fix tests with Apple GPUs (#756) (@amontoison)
- Update .builkite/pipeline.yml (#757) (@amontoison)
- Release 0.9.2 (#758) (@amontoison)
v0.9.1
Krylov v0.9.1
Closed issues:
- Add tests for verbose mode (#474)
- Add stopping criterion on time limit (#661)
- [documentation] Add keyword arguments in the docstrings (#663)
- [CI] Update Cirrus script (#694)
- [documentation] Update the comment about oneMKL for oneAPI.jl (#709)
- [documentation] Update examples with Nvidia preconditioners (#710)
- PCG produces different output on GPU (#724)
- [JOSS] Add a sentence about Apple Accelerate for LBT (#725)
- Unnecessary
eltype
restriciton on A (#736)
Merged pull requests:
- Add tests for verbose mode (#475) (@amontoison)
- final pass over paper (#690) (@amontoison)
- Update CI for aarch64 Mac -- Apple M1 (#691) (@amontoison)
- Add an example with BasicLU.jl in preconditioners.md (#692) (@amontoison)
- Fix #694 (#695) (@amontoison)
- Switch Metal.jl CI to the juliaecosystem pipeline. (#696) (@maleadt)
- Use JET to fix bugs and type instabilities (#697) (@amontoison)
- Add new tests for GPUs (#699) (@amontoison)
- Add more details about the number of Krylov methods (#703) (@amontoison)
- Allow more generic storage type S (#705) (@amontoison)
- Check that the KrylovSolvers are compatible with the dimension of the linear problems (#707) (@amontoison)
- [buildkite] Remove the build with AMDGPU.jl] (#708) (@amontoison)
- [documentation] Update the page related to the GPU support (#711) (@amontoison)
- Update LICENSE.md (#712) (@amontoison)
- Improve the JOSS paper with the comments of prj- (#713) (@amontoison)
- [documentation] Update the GPU section (#714) (@amontoison)
- Update the reference of the GPMR paper (#715) (@amontoison)
- Fix the documentation for CUDA.jl 4.1 (#718) (@amontoison)
- Add a threshold for codecov (#719) (@amontoison)
- Adress the remaining comments of prj- (#720) (@amontoison)
- Fix some typos (#721) (@goggle)
- [documentation] Use CUDA.zeros instead of similar (#722) (@amontoison)
- Update examples of the JOSS paper (#723) (@amontoison)
- Add Apple Accelerate for BLAS backends available with LBT (#726) (@amontoison)
- Add a reference for CR (#728) (@amontoison)
- Add the keyword argument timemax in all Krylov methods (#730) (@amontoison)
- Test Krylov.jl with CUDA 12.1.1 (#731) (@amontoison)
- Improve test_mp.jl (#733) (@amontoison)
- Use metaprogramming to define the kwargs of all Krylov methods (#735) (@amontoison)
- Update Breakage.yml for LinearSolve.jl (#737) (@amontoison)
- Update the kwargs of the in-place methods (#738) (@amontoison)
- Display a warning when the operator and the right-hand side don't have the same type (#739) (@amontoison)
- Update codecov.yml (#740) (@amontoison)
- Combine the allocation of the KrylovSolver with the warm-start (#742) (@amontoison)
- Update timemax when a KrylovSolver is allocated (#743) (@amontoison)
- Update the verbose mode to display a timer (#744) (@amontoison)
- Add a field timer in all KrylovStats (#745) (@amontoison)
- Release 0.9.1 (#747) (@amontoison)
v0.9.0
Krylov v0.9.0
Closed issues:
- Document callbacks (#587)
- Add GPU support for MINRES-QLP (#632)
- Suggestion: Overhauled minres implementation? (#652)
- [documentation] Change the category of USYMLQ and USYMQR (#665)
- Add
ktypeof
support for view arrays (#667)
Merged pull requests:
- Add six Krylov processes (#618) (@amontoison)
- [documentation] update callbacks.md (#629) (@amontoison)
- An implementation of FGMRES (#636) (@amontoison)
- Add vector_to_matrix function (#637) (@amontoison)
- Update multiple docstrings and comments (#638) (@amontoison)
- Reduce the storage required by DIOM and DQGMRES (#639) (@amontoison)
- Remove allocations in roots_quadratic (#640) (@amontoison)
- Add a comment about complex matrices in gpu.md (#641) (@amontoison)
- Add FGMRES in processes.md (#642) (@amontoison)
- Add discussion in readme (#643) (@tmigot)
- Add GPU support for to_boundary function (#644) (@amontoison)
- add imput and output arguments in all docstrings (#647) (@amontoison)
- Add the workflow Invalidations.yml (#649) (@amontoison)
- Use Aqua.jl in the tests (#650) (@amontoison)
- Add the support of CuSparseMatrixCOO in gpu.md (#651) (@amontoison)
- Add m and n in all Krylov solvers (#653) (@amontoison)
- Better display of Krylov solvers (#654) (@amontoison)
- [KrylovSolvers] Improve GPU support (#655) (@amontoison)
- Add optional argument(s) in the docstrings (#656) (@amontoison)
- Create a Aqua workflow (#657) (@amontoison)
- Fix Aqua workflow (#658) (@amontoison)
- Fix again the Aqua workflow (#659) (@amontoison)
- Improve allocation tests (#660) (@amontoison)
- [LNLQ] Use utolx and utoly instead of etolx and etoly (#662) (@amontoison)
- [documentation] Replace symmetric by Hermitian (#664) (@amontoison)
- [documentation] Add a section storage requirements (#666) (@amontoison)
- Change the category of USYMLQ and USYMQR (#668) (@amontoison)
- Support a view of a matrix as a right-hand side b (#669) (@amontoison)
- Improve Krylov processes (#671) (@amontoison)
- Update test/test_utils.jl (#672) (@amontoison)
- Fix a typo in processes.md (#674) (@amontoison)
- Comment processes (#675) (@amontoison)
- Use the same tolerance for all allocation tests (#676) (@amontoison)
- Add a keyword argument iostream for all Krylov methods (#677) (@amontoison)
- Update the show function for Krylov solvers (#678) (@amontoison)
- pass over paper (#681) (@dpo)
- Add documentation for all keyword arguments (#682) (@amontoison)
- [documentation] Remove the subsection restarted methods (#684) (@amontoison)
- Add notes about relations between processes (#685) (@amontoison)
- Check all docstrings (#688) (@amontoison)
- Release 0.9.0 (#689) (@amontoison)
v0.8.4
Krylov v0.8.4
Closed issues:
- Add documentation about preconditioners (#222)
- Tests failures on macOS ARM M1 (#560)
- Failing CR test (#598)
- fill out residual in output stats (#612)
Merged pull requests:
- comment out failing tests (#561) (@dpo)
- Setup JOSS paper (#603) (@amontoison)
- use strict=true in docs (#604) (@dpo)
- Update ktypeof function to support BlockArrays and FillArrays (#606) (@amontoison)
- Use the multiple dispatch for ktypeof function (#607) (@amontoison)
- [documentation] Add a section about preconditioners (#609) (@amontoison)
- Replace mul! by mulorldiv! for preconditioners (#610) (@amontoison)
- [documentation] Refactor examples (#611) (@amontoison)
- [documentation] Add a section for each Krylov method (#613) (@amontoison)
- Improve rNorm estimate in CR (#614) (@amontoison)
- Use a testset for all allocation tests (#615) (@amontoison)
- Update .cirrus.yml for FreeBSD 13.0 (#616) (@amontoison)
- Remove two tests for USYMQR (#619) (@amontoison)
- Update CommentPR.yml (#620) (@JarLob)
- add FPS in breakage tests (#621) (@tmigot)
- Use Aᴴ instead of Aᵀ (#622) (@amontoison)
- Add a reference to BiCG paper (#623) (@amontoison)
- [KrylovSolvers] inner constructors -> outer constructors (#624) (@amontoison)
- Use buildkite to test the GPU support (#625) (@amontoison)
- Test Krylov macros (#626) (@amontoison)
- Update workflows (#628) (@amontoison)
- [documentation] update gpu.md (#630) (@amontoison)
- [GPU] Remove random tests (#631) (@amontoison)
- Add more examples with the preconditioners (#633) (@amontoison)
- Release 0.8.4 (#634) (@amontoison)