Refs #20443 : Threading of Strings::join()
This uses openmp threads to speed up the `Strings::join()` function which was causing CreateWorkspace to be excessively slow when writing to the algorithm history. The speedup is not fantastic as it still takes about 8s to create a 1000x10000 workspace (using 8 threads), but it is an improvement on the 60s yielded by the original function. A new version of the `join()` function was actually added to `Strings.h`, and is used when the iterators passed as arguments are not random access in nature. If this is the case, then the original function is used. A test was added to `StringsTest.h` to make sure both `join()` functions are being tested.
Loading
Please register or sign in to comment