SWDEV-373173 - Handle kernel compilation WGP/cumode in occupancy calculation

Change-Id: Id0225683a578c3275a35f8f807a57b6379746392
这个提交包含在:
Anusha GodavarthySurya 编写, Anusha Godavarthy Surya 于 2023-01-18 03:27:30 -05:00 提交
1 父节点 27c5189bca
当前提交 ce8f441c14
1 个文件已更改
+3 -2
+3 -2
查看文件
@@ -352,8 +352,9 @@ hipError_t ihipOccupancyMaxActiveBlocksPerMultiprocessor(
const size_t SgprWaves = maxSGPRs / amd::alignUp(wrkGrpInfo->usedSGPRs_, 16);
GprWaves = std::min(VgprWaves, SgprWaves);
}
const size_t alu_occupancy = device.info().simdPerCU_ * std::min(MaxWavesPerSimd, GprWaves);
uint32_t simdPerCU = (device.isa().versionMajor() <= 9) ? device.info().simdPerCU_
: (wrkGrpInfo->isWGPMode_ ? 4 : 2);
const size_t alu_occupancy = simdPerCU * std::min(MaxWavesPerSimd, GprWaves);
const int alu_limited_threads = alu_occupancy * wrkGrpInfo->wavefrontSize_;
int lds_occupancy_wgs = INT_MAX;