Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PRE REVIEW]: Krylov.jl: A Julia basket of hand-picked Krylov methods #4970

Closed
editorialbot opened this issue Nov 26, 2022 · 44 comments
Closed
Assignees
Labels
Julia pre-review Shell TeX Track: 7 (CSISM) Computer science, Information Science, and Mathematics

Comments

@editorialbot
Copy link
Collaborator

editorialbot commented Nov 26, 2022

Submitting author: @amontoison (Alexis Montoison)
Repository: https://github.com/JuliaSmoothOptimizers/Krylov.jl
Branch with paper.md (empty if default branch): joss-paper
Version: v0.9.0
Editor: @jedbrown
Reviewers: @vchuravy, @prj-
Managing EiC: Daniel S. Katz

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/992d8e510f833d2868fce1342dd11d98"><img src="https://joss.theoj.org/papers/992d8e510f833d2868fce1342dd11d98/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/992d8e510f833d2868fce1342dd11d98/status.svg)](https://joss.theoj.org/papers/992d8e510f833d2868fce1342dd11d98)

Author instructions

Thanks for submitting your paper to JOSS @amontoison. Currently, there isn't a JOSS editor assigned to your paper.

@amontoison if you have any suggestions for potential reviewers then please mention them here in this thread (without tagging them with an @). In addition, this list of people have already agreed to review for JOSS and may be suitable for this submission (please start at the bottom of the list).

Editor instructions

The JOSS submission bot @editorialbot is here to help you find and assign reviewers and start the main review. To find out what @editorialbot can do for you type:

@editorialbot commands
@editorialbot editorialbot added pre-review Track: 7 (CSISM) Computer science, Information Science, and Mathematics labels Nov 26, 2022
@editorialbot
Copy link
Collaborator Author

Hello human, I'm @editorialbot, a robot that can help you with some common editorial tasks.

For a list of things I can do to help you, just type:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

Software report:

github.com/AlDanial/cloc v 1.88  T=0.17 s (925.6 files/s, 152016.1 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Julia                           94           3390           2632          15593
Markdown                        39            667              0           2392
YAML                            12             25             19            501
TeX                              2              7              0             81
TOML                             3              5              0             53
JSON                             1              0              0             43
Lisp                             1              1              0             20
CSS                              1              4              0             16
Bourne Shell                     1              0              0              6
SVG                              1              0              0              1
-------------------------------------------------------------------------------
SUM:                           155           4099           2651          18706
-------------------------------------------------------------------------------


gitinspector failed to run statistical information for the repository

@editorialbot
Copy link
Collaborator Author

Wordcount for paper.md is 1656

@editorialbot
Copy link
Collaborator Author

Failed to discover a Statement of need section in paper

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1145/2049662.2049663 is OK
- 10.1137/141000671 is OK
- 10.5281/zenodo.2655082 is OK
- 10.1080/00029890.1998.12004985 is OK
- 10.1109/TPDS.2018.2872064 is OK
- 10.1137/1.9780898718003 is OK
- 10.1137/1.9781611970937 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@danielskatz
Copy link

👋 @jedbrown - would you be able to edit this submission?

@danielskatz
Copy link

@editorialbot invite @jedbrown as editor

@editorialbot
Copy link
Collaborator Author

Invitation to edit this submission sent!

@amontoison
Copy link

amontoison commented Nov 26, 2022

Based on the list of people, I suggest leios and mvaldes as reviewers.
PetrKryslUCSD can be a good reviewer too.

@danielskatz
Copy link

👋 @jedbrown - just a reminder about this review invitation...

@jedbrown
Copy link
Member

jedbrown commented Dec 2, 2022

@editorialbot assign @jedbrown as editor

@editorialbot
Copy link
Collaborator Author

Assigned! @jedbrown is now the editor

@amontoison
Copy link

Hey @jedbrown @danielskatz , Is there something we can do to help find the reviewers?

@danielskatz
Copy link

@jedbrown - how's this this coming along?

@jedbrown
Copy link
Member

jedbrown commented Jan 3, 2023

Thanks @amontoison for your submission and sorry about the delay. I've surveyed your submission and it looks great. I would ask that you discuss related work:
.

  • A statement of need: Does the paper have a section titled ‘Statement of need’ that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?

https://joss.readthedocs.io/en/latest/review_checklist.html#software-paper

In pure numbers, I think PETSc has more Krylov methods, but probably not if you consider flexible and pipelined/communication-amortizing ones to all be the same. I think this statement needs some discussion/nuance.

@jedbrown
Copy link
Member

jedbrown commented Jan 3, 2023

@leios @mvaldes 👋 Would you be available to review this submission to JOSS?

@amontoison
Copy link

amontoison commented Jan 6, 2023

Thanks @jedbrown for your answer.
For the section Statement of need, we preferred to title it Features and Functionalities for information but we can rename it if it's mandatory for JOSS.

The two other main Julia packages that contains Krylov methods are IterativeSolvers.jl and KrylovKit.jl but they are not focused on linear solvers are have a very limited subset of Krylov methods like cg, lsmr, gmres.
KrylovKit.jl doesn't support preconditioners and IterativeSolvers.jl is only maintained, no new feature since 2/3 years.
Add benchmarks with them is not very relevant from my point of view.
However comparisons / benchmarks between Krylov.jl and PETSc could be a nice addition to the paper.

For the number of methods, I didn't know that PETCs has many flexible and pipelined/communication-amortizing variants. From my point of view, we have different Krylov methods if they generate different iterates. I checked with the number of Krylov methods available in MATLAB when I wrote that Krylov.jl has the largest collection of Krylov processes / methods. I will clarify and nuance my statement.

@amontoison
Copy link

Related topic for benchmarks between Krylov.jl and PETCs:
https://discourse.julialang.org/t/creating-and-solving-block-sparse-matrices-with-petsc/90831
The main issue is to do fair comparisons with the same preconditioners and options.

@jedbrown
Copy link
Member

Thanks, the acceptance bot flags papers that don't have that section so unless you have a strong attachment to your name, please use the standard one.

Please let us know here when your update is complete.

@amontoison
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@amontoison
Copy link

amontoison commented Jan 29, 2023

@editorialbot check references

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1145/2049662.2049663 is OK
- 10.1137/141000671 is OK
- 10.5281/zenodo.2655082 is OK
- 10.1080/00029890.1998.12004985 is OK
- 10.1109/TPDS.2018.2872064 is OK
- 10.1137/1.9780898718003 is OK
- 10.1137/1.9781611970937 is OK

MISSING DOIs

- None

INVALID DOIs

- None

@amontoison
Copy link

@editorialbot check repository

@editorialbot
Copy link
Collaborator Author

Software report:

github.com/AlDanial/cloc v 1.88  T=0.52 s (297.8 files/s, 49398.3 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Julia                           94           3394           2620          15648
Markdown                        39            672              0           2419
YAML                            11             25             20            496
TeX                              2              9              0             95
TOML                             3              5              0             53
JSON                             1              0              0             43
Lisp                             1              1              0             20
CSS                              1              4              0             16
Bourne Shell                     1              0              0              6
SVG                              1              0              0              1
-------------------------------------------------------------------------------
SUM:                           154           4110           2640          18797
-------------------------------------------------------------------------------


gitinspector failed to run statistical information for the repository

@editorialbot
Copy link
Collaborator Author

Wordcount for paper.md is 1692

@amontoison
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@amontoison
Copy link

@jedbrown
I renamed the section Features and Functionalities into Statement of need.
I also added clarifications about the statement that Krylov.jl has the biggest collection of Krylov methods.
I checked the documentation of PETSc and MATLAB (section Iterative Methods and Preconditioners) and they have 18 and 11 Krylov methods, respectively.

I still need to add benchmarks between PETCs and Krylov.jl, I will try to find time to do it this week.

@amontoison
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@amontoison
Copy link

@jedbrown @danielskatz
Do you have news from potential reviewers?

@jedbrown
Copy link
Member

Seems I need to ask some people off-github.

@amontoison
Copy link

amontoison commented Feb 18, 2023

@jedbrown
I checked again this list of people and I have new suggestions:
@PetrKryslUCSD, @ChrisRackauckas, @vchuravy, @ysimillides, @jgoldfar, @williamfgc. @mlxd, @haampie.

@dpo
Copy link

dpo commented Feb 23, 2023

@jedbrown @danielskatz We submitted this report on November 26, 2022. Have you at all been able to identify adequate reviewers? We've suggested a number of candidates. After three months, we were really hoping to already have received referee reports. Why is this taking so long?

Thank you.

@jedbrown
Copy link
Member

I appreciate your patience. I would love for things to move faster, but people are massively oversubscribed and it tends to take many requests per reviewer acceptance. This situation is not unique to JOSS -- I have submitted manuscripts that are nearly a year out and every editor I know encounters this -- though we try to move things along more quickly via the review structure at JOSS. There was a structural discussion in the pre-review and the paper was updated (thanks!). I'm working on finding reviewers and will update as soon as possible.

@jedbrown
Copy link
Member

Thanks for your comment regarding PETSc. The old table had been stale (I think nobody intended it to be comprehensive, but obviously people were looking at it as though it was). You can see this updated table for a current list. Many of the flexible and pipelined methods generate the same Krylov space (if run in exact arithmetic with a linear preconditioner), albeit with different parallel and computational semantics.

@jedbrown
Copy link
Member

@editorialbot add @vchuravy as reviewer

@editorialbot
Copy link
Collaborator Author

@vchuravy added to the reviewers list!

@jedbrown
Copy link
Member

@editorialbot add @prj- as reviewer

@editorialbot
Copy link
Collaborator Author

@prj- added to the reviewers list!

@jedbrown
Copy link
Member

@editorialbot start review

@editorialbot
Copy link
Collaborator Author

OK, I've started the review over in #5187.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Julia pre-review Shell TeX Track: 7 (CSISM) Computer science, Information Science, and Mathematics
Projects
None yet
Development

No branches or pull requests

5 participants