This is an archive of the discontinued LLVM Phabricator instance.

[Attributor] Add an option to increase the max number of iterations
ClosedPublic

Authored by jhuber6 on Jun 16 2021, 12:44 PM.

Details

Summary

Right now the Attributor defaults to 32 fixed point iterations unless it is set
explicitly by a command line flag. This patch allows this to be configured when
the attributor instance is created. The maximum is then increased in OpenMPOpt
if the target is a kernel. This is because the globalization analysis can result
in larger iteration counts due to many dependent instances running at once.

Depends on D102444

Diff Detail

Event Timeline

jhuber6 created this revision.Jun 16 2021, 12:44 PM
jhuber6 requested review of this revision.Jun 16 2021, 12:44 PM
Herald added a reviewer: baziotis. · View Herald Transcript
Herald added a project: Restricted Project. · View Herald Transcript
jdoerfert accepted this revision.Jun 17 2021, 5:22 PM

Go higher for GPUs, 128 or so. And we really need a metadata check to avoid looking for kernels.

I feel we should not hard code 32 in the constructor but continue to keep it in the command line option. The constructor value can be higher, so if you use it out of the box you get more iterations, maybe even -1.
That said, iterations is a bad metric anyway. We need to transition to update counts instead. Maybe we just keep it as you have it now and replace the pluming as we go to update counting. At that point we want
the number to be relative to the number of AAs, thus it should be a factor not a fixed bound.

LGTM, just change the GPU default please.

This revision is now accepted and ready to land.Jun 17 2021, 5:22 PM
This revision was landed with ongoing or failed builds.Jun 22 2021, 11:38 AM
This revision was automatically updated to reflect the committed changes.