-
Notifications
You must be signed in to change notification settings - Fork 3
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
GPU acceleration #3
Comments
I emailed this in January but to share it more widely: If we want to calculate only at a single thickness, matrix diagonalization is less efficient and not necessary. We can directly calculate matrix exponentials. Ultramicroscopy "Stacked-Bloch-wave electron diffraction simulations using GPU acceleration" This calculates the matrix exponential directly, without diagonalization. The paper claims this approach is faster and more suitable for GPU. This is very interesting. Although the paper does not mention derivative calculation, it should also be possible. The matrix exponential is available in SciPy as |
That sounds super interesting thank you for sharing this. We ll have a look at implementing it. |
I have tested matrix diagonalization on a remote gpu and it appears that I was starting to get acceleration for 2000x2000 matrix diagonalization. So to get the blochwave code to run larger matrices like that you have 2 options :
miscYou can make regular commits but ideally the new commits should leave the code in a working state. |
gpu acceleration
Implement functionalities to Speed up the calculation
Task1 : matrix diagonalization
Accelerate the matrix diagonlization and have a single test file that :
The text was updated successfully, but these errors were encountered: