You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks @mikesmic for your guidance re quaternion product — that helped me understand the code in calc_sym_eqvs which is currently the slowest part of reading in a file. I've vectorised most of the operations and... See identical performance! 😅 So more work is needed. The other thing is that extract_quat_comps takes up ~50% of the runtime and that should be ~0 if the internal data structure was a NumPy array to begin with. The other target of optimisation is that operations like np.cross are more efficient when the coefficients are in certain axes... So I'll play with that too.
We're hoping to make a new release in the not too distant future! Would be nice to include any optimisation to runtime for quaternion operations.
I think the slow speeds we see are a consequence of using a list of quat objects for some operations, which is then slow to convert back to a numpy array for efficient vectorised calculations, as you mention.
Ah cool to hear @rhysgt! I will try to pick this up again (or happy to set up a time where we can pair up on it, as I am still a bit lost about the roles of all the data structures in DefDAP).
btw would you and/or @mikesmic mind checking the Zulip chat re reading Jie's data with overlapping bins? (The data is linked in the zip and I can't read it correctly with DefDAP — I get nan's for the strain maps.) (Maybe I should just open an issue 😅 but right now it's bedtime and I wanted to make sure it's on your radar before release. 😊)
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
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.
Thanks @mikesmic for your guidance re quaternion product — that helped me understand the code in
calc_sym_eqvswhich is currently the slowest part of reading in a file. I've vectorised most of the operations and... See identical performance! 😅 So more work is needed. The other thing is thatextract_quat_compstakes up ~50% of the runtime and that should be ~0 if the internal data structure was a NumPy array to begin with. The other target of optimisation is that operations likenp.crossare more efficient when the coefficients are in certain axes... So I'll play with that too.