[PATCH] D31124: AMDGPU/SI: Add lane tracking to SI Scheduler
Axel Davy via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 28 11:21:30 PDT 2017
axeldavy added a comment.
In https://reviews.llvm.org/D31124#712336, @vpykhtin wrote:
> Ok, I understood SIScheduleBlockCreator::scheduleInsideBlocks() moves instructions to actually get LiveIn and LiveOut set for a block, but this is rather heavy. Have you thought about getting those using DAG directly, not regpressure tracker? By the common sence the dependencies between blocks correspond to that liveness info. There is a problem however: LiveIn and LiveOut dependencies aren't modelled for boundary SUs. I have local patch that build such dependencies - scheduling region LiveIns edges comes from EntrySU, LiveOut - to ExitSU. Another problem - dependency edges doesn't have lanemask, need to think how to deal with this.
This part is the slowest part of the scheduler (handleMove is very innefficient). It's probably a good idea to replace it with a faster system.
Repository:
rL LLVM
https://reviews.llvm.org/D31124
More information about the llvm-commits
mailing list