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

Explicit memory management of working memory #241

Closed
wants to merge 7 commits into from

Conversation

termoshtt
Copy link
Member

@termoshtt termoshtt commented Jul 29, 2020

Resolve #168

Changes

  • Create structs which manages working memory used in LAPACK routines, e.g. EighWork
  • Lapack trait merges *_ traits, e.g. Eigh_
  • Introduce LapackStrict trait for APIs which manage memory strictly.
  • Make submodules in lax, e.g. lax::eigh, private and expose them into lax:: namespace Remove ndarray_linalg::lapack alias, make lax submodule private #242

TODO

  • cholesky
  • eig
  • eigh
  • least_square
  • opnorm
  • qr
  • solve
  • solveh
  • svd
  • svddc
  • triangular
  • tridiagonal

@termoshtt termoshtt added this to the 0.13.0 milestone Jul 29, 2020
@termoshtt termoshtt self-assigned this Jul 29, 2020
@codecov
Copy link

codecov bot commented Jul 29, 2020

Codecov Report

Merging #241 into master will decrease coverage by 0.70%.
The diff coverage is 69.69%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #241      +/-   ##
==========================================
- Coverage   89.08%   88.38%   -0.71%     
==========================================
  Files          71       74       +3     
  Lines        3592     3694     +102     
==========================================
+ Hits         3200     3265      +65     
- Misses        392      429      +37     
Impacted Files Coverage Δ
lax/src/cholesky.rs 100.00% <ø> (ø)
lax/src/lib.rs 100.00% <ø> (ø)
lax/src/strict.rs 0.00% <0.00%> (ø)
lax/src/eigh_generalized.rs 47.94% <47.94%> (ø)
lax/src/eigh.rs 100.00% <100.00%> (+5.55%) ⬆️
lax/src/traits.rs 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6ab2b48...ba45af3. Read the comment docs.

@termoshtt
Copy link
Member Author

Lapack trait merges *_ traits, e.g. Eigh_
Introduce LapackStrict trait for APIs which manage memory strictly.

These should be split into another PR

@termoshtt
Copy link
Member Author

This can be done without breaking change. I drop this PR from 0.13.0 milestone.

@termoshtt
Copy link
Member Author

This PR is outdated. Passed to #333

@termoshtt termoshtt closed this Sep 9, 2022
@termoshtt termoshtt deleted the non-allocation-api branch September 9, 2022 04:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

API for pre-allocated calculation for better performance
1 participant