|
LLVM 24.0.0git
|
Coexecution-focused scheduling strategy for AMDGPU. More...
#include "AMDGPUCoExecSchedStrategy.h"#include "AMDGPUBarrierLatency.h"#include "AMDGPUIGroupLP.h"#include "GCNHazardRecognizer.h"#include "llvm/Support/Debug.h"Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "machine-scheduler" |
Functions | |
| static SUnit * | pickOnlyChoice (SchedBoundary &Zone) |
| static void | allowCoExec (llvm::AMDGPU::CoExecInfo &Info, llvm::AMDGPU::CoExecMaskT ExtraBits, unsigned StartIndex) |
Apply ExtraBits to every slot in Info starting with StartIndex Used by MFMA co-exec rules, because MFMA co-exec slots are incremental, i.e. | |
Variables | |
| static constexpr unsigned | DefaultCoExecVGPRThresholdPercent = 100 |
Coexecution-focused scheduling strategy for AMDGPU.
Definition in file AMDGPUCoExecSchedStrategy.cpp.
| #define DEBUG_TYPE "machine-scheduler" |
Definition at line 23 of file AMDGPUCoExecSchedStrategy.cpp.
|
static |
Apply ExtraBits to every slot in Info starting with StartIndex Used by MFMA co-exec rules, because MFMA co-exec slots are incremental, i.e.
for every slot N it supports all instructions which were supported by the previous slot N-1 and may support something extra.
Definition at line 55 of file AMDGPUCoExecSchedStrategy.cpp.
Referenced by llvm::AMDGPU::getMFMACoExecInfo().
|
static |
Definition at line 42 of file AMDGPUCoExecSchedStrategy.cpp.
References llvm::ReadyQueue::empty(), llvm::SchedBoundary::Pending, and llvm::SchedBoundary::pickOnlyChoice().
Referenced by llvm::AMDGPUCoExecSchedStrategy::pickNode(), llvm::GCNSchedStrategy::pickNode(), and llvm::GCNSchedStrategy::pickNodeBidirectional().
|
staticconstexpr |
Definition at line 26 of file AMDGPUCoExecSchedStrategy.cpp.
Referenced by llvm::AMDGPUCoExecSchedStrategy::AMDGPUCoExecSchedStrategy().