Parallel apple silicon9/8/2023 ![]() ![]() I have tried to compile the software with both llvm 14 (stable 14.0.6 (bottled)) and llvm 13 (stable 13.0.1 (bottled), tried due to a suspected regression) but without success so far. Otherwise the results of the computation are correct, it just seems to affect the speed. For instance, the computation without OpenMP takes ~15 seconds, with OpenMP it takes ~90 seconds, and even in the worse scaling case, I'd expect a speed-up of 2x-4x. However, the runtime with OpenMP is significantly slower than without OpenMP. ![]() The code compiles and uses OpenMP I see that since I had to fix a few minor issues on firstprivate clauses where Clang is more strict than GCC and I see the execution using multiple threads. Unfortunately, the results are different than expected. ![]() That's why I have compiled now everything with Homebrew's Clang to enable OpenMP. When I compile the code on macOS with Apple Clang everything works, except that of course the code runs single-threaded since AppleClang does not support OpenMP. on 圆4 Ubuntu) without problems the computations are more or less embarrassing parallel, so the speed-ups from running the computation via OpenMP in multi-threaded manner are significant. The code is compute-heavy, well understood and uses OpenMP since years (e.g. I am trying to compile OpenMP-enabled C++ code on macOS Monterey (12.5.1) on Apple Silicon (Apple M1 Max) to get the respective speed-ups. ![]()
0 Comments
Leave a Reply.AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |