P4 to Git Change 1792217 by asalmanp@asalmanp-ocl-stg on 2019/06/05 12:26:00
SWDEV-132899 - [OCL][GFX10] increase the numScratchWavesPerCu in Wave32 mode and use the actual num of CUs not the total num of WGPs when calculating the scratch buffer size
ReviewBoardURL = http://ocltc.amd.com/reviews/r/17474/
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldevice.cpp#139 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#81 edit
[ROCm/clr commit: de52451edd]
This commit is contained in:
@@ -2003,7 +2003,7 @@ bool Device::allocScratch(uint regNum, const VirtualGPU* vgpu) {
|
||||
if (scratchBuf->regNum_ > 0) {
|
||||
scratchBuf->destroyMemory();
|
||||
// Calculate the size of the scratch buffer for a queue
|
||||
uint32_t numTotalCUs = info().maxComputeUnits_;
|
||||
uint32_t numTotalCUs = properties().gfxipProperties.shaderCore.numAvailableCus;
|
||||
uint32_t numMaxWaves = settings().numScratchWavesPerCu_ * numTotalCUs;
|
||||
scratchBuf->size_ = static_cast<uint64_t>(info().wavefrontWidth_) * scratchBuf->regNum_ *
|
||||
numMaxWaves * sizeof(uint32_t);
|
||||
|
||||
@@ -211,6 +211,9 @@ bool Settings::create(const Pal::DeviceProperties& palProp,
|
||||
enableWave32Mode_ = GPU_ENABLE_WAVE32_MODE;
|
||||
}
|
||||
lcWavefrontSize64_ = !enableWave32Mode_;
|
||||
if (enableWave32Mode_) {
|
||||
numScratchWavesPerCu_ *= 2;
|
||||
}
|
||||
// Fall through to AI (gfx9) ...
|
||||
case Pal::AsicRevision::Vega20:
|
||||
// Enable HW P2P path for Vega20+. Runtime still relies on KMD/PAL for support
|
||||
|
||||
مرجع در شماره جدید
Block a user