- changed status to open
- removed comment
Parallelising AEILocalInterp
The enclosed patch parallelises AEILocalInterp via OpenMP.
This leads to a slight change in behaviour. Currently, AEILocalInterp traverses the list of points sequentially, and aborts when the first error is encountered. After parallelisation, there is no fixed order in which the points are traversed, and if several errors are encountered, any one of the errors may be returned, not necessarily the first. I am not aware of any thorn that would or should rely on such an ordering.
This patch also adds "restrict" and "const" statements that may improve performance as it gives the compiler more information about dependencies between pointers.
Keyword:
Comments (6)
-
reporter -
reporter - removed comment
- ping*
-
- changed status to open
- assigned issue to
- removed comment
The patch mostly looks good, but I noticed two things: - next time please try to prepare two different patches: the one with restrict&const can probably be applied without discussion, and the remaining changes are then not that long - there are some #if 0 close to the new openmp statements. It would be nice to either remove them (since they are not used in any case), or if they should stay at least for some time, please use a #define to dis- or enable all at the same time, and to have some more information in the source. It reads better to have #if DISABLE_OPENMP (or similar) than #if 0
Frank
-
reporter - changed status to resolved
- removed comment
I removed the #if 0 parts of the code.
Applied.
-
reporter - changed status to open
- removed comment
I reverted this patch because it led to test suite failures in SphericalHarmonicRecon (reported in
#873). Another problem with this patch is that it (apparently) leads to too much output, since interpolation is not aborted any more after the first error.We will revisit this after the ET_2011_05 release.
-
Issue
#1477was marked as a duplicate of this issue. - Log in to comment