forked from OSchip/llvm-project
01dcf36bd5
These changes allow libhwloc to be used as the topology discovery/affinity mechanism for libomp. It is supported on Unices. The code additions: * Canonicalize KMP_CPU_* interface macros so bitmask operations are implementation independent and work with both hwloc bitmaps and libomp bitmaps. So there are new KMP_CPU_ALLOC_* and KMP_CPU_ITERATE() macros and the like. These are all in kmp.h and appropriately placed. * Hwloc topology discovery code in kmp_affinity.cpp. This uses the hwloc interface to create a libomp address2os object which the rest of libomp knows how to handle already. * To build, use -DLIBOMP_USE_HWLOC=on and -DLIBOMP_HWLOC_INSTALL_DIR=/path/to/install/dir [default /usr/local]. If CMake can't find the library or hwloc.h, then it will tell you and exit. Differential Revision: http://reviews.llvm.org/D13991 llvm-svn: 254320 |
||
---|---|---|
.. | ||
api | ||
atomic | ||
barrier | ||
critical | ||
flush | ||
lock | ||
master | ||
parallel | ||
tasking | ||
threadprivate | ||
worksharing | ||
CMakeLists.txt | ||
lit.cfg | ||
lit.site.cfg.in | ||
omp_my_sleep.h | ||
omp_testsuite.h |