[LLVMdev] [Openmp-dev] Future of the LLVM OpenMP runtime
cbergstrom at pathscale.com
Thu Feb 27 19:17:00 PST 2014
On 02/28/14 10:15 AM, Rick Mann wrote:
> On Feb 27, 2014, at 19:03 , C. Bergström <cbergstrom at pathscale.com> wrote:
>> On 02/28/14 04:20 AM, Rick Mann wrote:
>>> Tangentially related, I have a question:
>>> I don't know, well, anything about how OpenMP is implemented. But does it make sense to use Grand Central Dispatch on platforms that support it (instead of, I assume, pthreads)?
>> We played with implementing OpenMP 3.x tasks on top of libdispatch and while we got it to work - there was some scalability of the scheduling across a lot of cores which would probably need to be addressed. For systems with 4-8 cores I doubt it would ever cause a significant problem though.
> That's good news. Currently I need OpenMP support in Xcode because I'm incorporating code my colleagues wrote that uses it into the iOS app I write. We have yet to exceed four cores on an iOS device, so that should be okay. Perhaps the runtime can conditionally build to use GCD when targeting iOS or OS X (assuming there's a compelling reason, performance or energy, to do so).
Maybe you didn't understand 100% - Is the code your colleagues wrote
using OpenMP tasks or some other part of the OMP standard? (I suspect
it's not using tasks) In which case lowering down to pthreads is
probably all that's available.
The good news - libdispatch is portable to almost all platforms (except
Windows I think). We got the best scalability off OpenSolaris (RIP)
More information about the llvm-dev