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
Describe the feature / issue
With refactoring of analysis modules underway in #1789 we should consider how we will facilitate parallelism over things like double and triple loops over sites which occur frequently in our modules.
We could envisage helper classes which take the site vectors generated by SiteSelectors, any "rules" to enable the proper exclusion (e.g. index(A) < index(B), or molecule(A) != molecule(B)) or inclusion (e.g. molecule(B) == molecule(C)) of site tuples, and a lambda to perform the processing on the sites. Threading over a suitable loop can then be woven in to the class, probably with another lambda for creation of the combinable for the operation.
This class could also reorder loops based on their size to provide optimal performance.
The text was updated successfully, but these errors were encountered:
Describe the feature / issue
With refactoring of analysis modules underway in #1789 we should consider how we will facilitate parallelism over things like double and triple loops over sites which occur frequently in our modules.
We could envisage helper classes which take the site vectors generated by
SiteSelector
s, any "rules" to enable the proper exclusion (e.g. index(A) < index(B), or molecule(A) != molecule(B)) or inclusion (e.g. molecule(B) == molecule(C)) of site tuples, and a lambda to perform the processing on the sites. Threading over a suitable loop can then be woven in to the class, probably with another lambda for creation of the combinable for the operation.This class could also reorder loops based on their size to provide optimal performance.
The text was updated successfully, but these errors were encountered: