This is an archive of the discontinued LLVM Phabricator instance.

[OpenMP] Version functions to aid SPMDzation
Changes PlannedPublic

Authored by jdoerfert on Aug 10 2021, 10:05 AM.

Details

Summary

If a function is reached from a parallel region and a sequential part of
a kernel we cannot use the simple guarding blocks for side effects as
they might deadlock in the parallel region. This patch will track such
functions and version them. We will call a ".parallel" version if we
reach it from a parallel region and the default one otherwise. Only in
the default one we will create guards which avoids checks for the "mode"
and potential deadlocks.

Diff Detail

Event Timeline

jdoerfert created this revision.Aug 10 2021, 10:05 AM
jdoerfert requested review of this revision.Aug 10 2021, 10:05 AM
Herald added a reviewer: baziotis. · View Herald Transcript
Herald added a project: Restricted Project. · View Herald Transcript
jdoerfert planned changes to this revision.Aug 10 2021, 9:09 PM

Needs more time.

ormris removed a subscriber: ormris.Jan 24 2022, 11:49 AM