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

Memory considerations with eigenvectors #90

Open
martin-ueding opened this issue Feb 7, 2019 · 4 comments
Open

Memory considerations with eigenvectors #90

martin-ueding opened this issue Feb 7, 2019 · 4 comments

Comments

@martin-ueding
Copy link
Contributor

On the large lattices the reading of all eigenvectors might not fit into memory, we likely have to carefully check how many of them we have in memory at the same time.

@kostrzewa
Copy link
Member

An alternative is to generate VdaggerV and use that. In fact, we are now facing this problem and really need to make progress here. @pittlerf this is the place to contribute if you want to take the lead on this.

@kostrzewa
Copy link
Member

@martin-ueding Is VdaggerV support still broken or disabled?

@kostrzewa
Copy link
Member

@matfischer @urbach This needs to be worked on before the cA2.09.48 rho contractions can be done on Juwels. Also relevant for 3pi. (and anything else, really)

@kostrzewa
Copy link
Member

Relatively easy fixes might be to

  1. rewrite the VdaggerV code to read the contractions input file, generate all required VdaggerV based on the generated dependencies. This can happen time-slice by time-slice, so memory should not be a problem. One could also trivially MPI-parallelize this, just so as to be able to run larger jobs which might queue more quickly. (or one does MPMD, although that is somewhat less automatic)

  2. do the same as above but in the contraction code: read eigenvenctors time slice by time slice and generate the necessary VdaggerV at a constant memory cost of keeping a single time slice of eigenvectors resident. This memory can afterwards of course also be released.

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

No branches or pull requests

2 participants