This is an archive of the discontinued LLVM Phabricator instance.

Add an option to bind initial thread at the start of application
ClosedPublic

Authored by AndreyChurbanov on Feb 7 2017, 10:38 AM.

Details

Summary

Introduced environment variable KMP_INITIAL_THREAD_BIND that allows to bind initial thread of OpenMP application to be bound at the very beginning. To do so call middle library initialization from compiler generated function __kmpc_begin(). The middle initialization includes machine topology discovery and binding of the thread according to requested method if any.

This change is done by request from customer who wanted serial start of application be executed on the same core as the master thread of parallel region.

Diff Detail

Repository
rL LLVM

Event Timeline

This revision is now accepted and ready to land.Feb 15 2017, 9:20 AM
This revision was automatically updated to reflect the committed changes.