Quantization of the Jacobian matrix to speed up linear algebra operations#2836
Open
pcarruscag wants to merge 21 commits into
Open
Quantization of the Jacobian matrix to speed up linear algebra operations#2836pcarruscag wants to merge 21 commits into
pcarruscag wants to merge 21 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Proposed Changes
Lossy compression of the Jacobian to make products and preconditioners faster.
Currently activated via a variant of LU-SGS preconditioner
Q_LU_SGS, since it probably doesn't make sense to use this for ILU.Only compatible with the primal compressible and incompressible solvers (disabled for adjoint mode). Other solvers fall back silently to regular LU-SGS.
For the CRM case I mentioned in the LDU PR, the 1.85s with normal LU-SGS become 1.66s in this branch (due to the change to clearing just the diagonal of the Jacobian instead of everything) and 1.36s with quantization.
So, a 50% speed-up between LDU, quantization, and other inefficiencies.
PR Checklist
pre-commit run --allto format old commits.