From 02318b8eafa623cc1aa7833c91a62d5d9efbfa45 Mon Sep 17 00:00:00 2001 From: Alexis Montoison <alexis.montoison@polymtl.ca> Date: Sun, 5 Feb 2023 23:12:57 +0100 Subject: [PATCH 1/3] Add more details about the number of Krylov methods --- paper/paper.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index 759e3ca53..3b5ef0ce7 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -16,7 +16,7 @@ authors: affiliations: - name: GERAD and Department of Mathematics and Industrial Engineering, Polytechnique Montréal, QC, Canada. index: 1 -date: 29 January 2023 +date: 5 February 2023 bibliography: paper.bib header-includes: | \usepackage{booktabs} @@ -59,8 +59,10 @@ Krylov.jl aims to provide a unified interface for the largest collection of Kryl - \textbf{Krylov processes}: \textsc{Arnoldi}, \textsc{Golub-Kahan}, \textsc{Hermitian Lanczos}, \textsc{Montoison-Orban}, \textsc{Non-Hermitian Lanczos}, \textsc{Saunders-Simon-Yip}; - \textbf{Krylov methods}: \textsc{Bicgstab}, \textsc{Bilq}, \textsc{Bilqr}, \textsc{Cg}, \textsc{Cg-lanczos}, \textsc{Cg-lanczos-shift}, \textsc{Cgls}, \textsc{Cgne}, \textsc{Cgs}, \textsc{Cr}, \textsc{Craig}, \textsc{Craigmr}, \textsc{Crls}, \textsc{Crmr}, \textsc{Diom}, \textsc{Dqgmres}, \textsc{Fgmres}, \textsc{Fom}, \textsc{Gmres}, \textsc{Gpmr}, \textsc{Lnlq}, \textsc{Lslq}, \textsc{Lsmr}, \textsc{Lsqr}, \textsc{Minres}, \textsc{Minres-qlp}, \textsc{Qmr}, \textsc{Symmlq}, \textsc{Tricg}, \textsc{Trilqr}, \textsc{Trimr}, \textsc{Usymlq}, \textsc{Usymqr}. -MATLAB [@MATLAB] and PETSc [@petsc] have nineteen and eighteen distinct Krylov methods, respectively. -Note that we only consider the number of Krylov methods that generate different iterates. +MATLAB [@MATLAB] and PETSc [@petsc] have eleven and eighteen distinct Krylov methods, respectively. +Note that we only consider the number of Krylov methods that generate different iterates without preconditioning. +Variants with preconditioning are not counted except it is a flexible one such as \textsc{Fgmres}. + Some processes and methods are not available elsewhere and are the product of our own research. References for each process and method are available in the extensive [documentation](https://juliasmoothoptimizers.github.io/Krylov.jl/stable/). From d4582a9ae26286a10758ab62b58cc84f830c8cc6 Mon Sep 17 00:00:00 2001 From: Alexis Montoison <alexis.montoison@polymtl.ca> Date: Wed, 15 Feb 2023 16:51:28 -0500 Subject: [PATCH 2/3] Update example with Nvidia IC0 preconditioner --- paper/paper.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index 3b5ef0ce7..9ac2e1e65 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -187,11 +187,13 @@ b_gpu = CuVector(b_cpu) # Incomplete Cholesky decomposition LLᴴ ≈ A with zero fill-in P = ic02(A_gpu, 'O') +# Additional vector required for solving triangular systems +z = similar(CuVector{ComplexF64}, n) + # Solve Py = x -function ldiv_ic0!(y, P, x) - copyto!(y, x) - ldiv!(LowerTriangular(P), y) # Forward substitution with L - ldiv!(LowerTriangular(P)', y) # Backward substitution with Lᴴ +function ldiv_ic0!(P, x, y, z) + ldiv!(z, LowerTriangular(P), x) # Forward substitution with L + ldiv!(y, LowerTriangular(P)', z) # Backward substitution with Lᴴ return y end @@ -199,7 +201,7 @@ end T = ComplexF64 symmetric = false hermitian = true -P⁻¹ = LinearOperator(T, m, n, symmetric, hermitian, (y, x) -> ldiv_ic0!(y, P, x)) +P⁻¹ = LinearOperator(T, m, n, symmetric, hermitian, (y, x) -> ldiv_ic0!(P, x, y, z)) # Solve a Hermitian positive definite system with an incomplete Cholesky factorization preconditioner x, stats = cg(A_gpu, b_gpu, M=P⁻¹) From 8af9f3a7b3e125ece5e5824ac3e70e4bd556e3c4 Mon Sep 17 00:00:00 2001 From: Alexis Montoison <35051714+amontoison@users.noreply.github.com> Date: Wed, 15 Feb 2023 17:20:14 -0500 Subject: [PATCH 3/3] Update the date --- paper/paper.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/paper/paper.md b/paper/paper.md index 9ac2e1e65..986e51ed0 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -16,7 +16,7 @@ authors: affiliations: - name: GERAD and Department of Mathematics and Industrial Engineering, Polytechnique Montréal, QC, Canada. index: 1 -date: 5 February 2023 +date: 15 February 2023 bibliography: paper.bib header-includes: | \usepackage{booktabs}