parallel-runtimes / lomp

Little OpenMP Library
Apache License 2.0
153 stars 17 forks source link

Implement GCC compatible entry points for loops scheduling #3

Open JimCownie opened 3 years ago

JimCownie commented 3 years ago

The runtime has some entry-points to enable it to be used with OpenMP code compiled by compilers from the Gnu Compiler Collection (GCC), but it does not yet have those for loop scheduling.

That is a clear omission that it would be good to fix.

mjklemm commented 3 years ago

@JimCownie Do you see a change to have this one resolved before August 31 or shall we aim for resolving it for LOMP v0.3?

JimCownie commented 3 years ago

AFAICS there are other things which need to be fixed before the loop interfaces matter.

$ DYLD_LIBRARY_PATH=`echo ~/lomp/build/src`:${DYLD_LIBRARY_PATH} OMP_NUM_THREADS=1 ./a.out
dyld: lazy symbol binding failed: Symbol not found: _GOMP_parallel
  Referenced from: /Users/jcownie/tmp/./a.out
  Expected in: /Users/jcownie/lomp/build/src/libgomp.1.dylib

dyld: Symbol not found: _GOMP_parallel
  Referenced from: /Users/jcownie/tmp/./a.out
  Expected in: /Users/jcownie/lomp/build/src/libgomp.1.dylib

Abort trap: 6
$ 

Or, are GCC entrypoints not built in by default?

mjklemm commented 3 years ago

They are not built by default. You have turn them on explicitly. We did that because we only support a tiny subset of them yet. Once we have e loop entrypoints, we can enable them by default.