SWDEV-301667 - Kern arg placement

Add a env var ROC_USE_FGS_KERNARG to toggle kernel arg placement
By default its in Fine Grain Kernel arg segment for supported asics.

Change-Id: I3d57ed69a1a4db2b392b0438ead499f3ddca4716


[ROCm/clr commit: e29b9c00ee]
This commit is contained in:
Saleel Kudchadker
2021-09-01 10:42:34 -07:00
parent 587b98105f
commit 1bf9b39cf8
4 changed files with 17 additions and 9 deletions
@@ -100,8 +100,8 @@ Settings::Settings() {
}
// ================================================================================================
bool Settings::create(bool fullProfile, uint32_t gfxipMajor, uint32_t gfxipMinor, bool enableXNACK,
bool coop_groups) {
bool Settings::create(bool fullProfile, uint32_t gfxipMajor, uint32_t gfxipMinor,
uint32_t gfxStepping, bool enableXNACK, bool coop_groups) {
customHostAllocator_ = false;
if (fullProfile) {
@@ -172,6 +172,10 @@ bool Settings::create(bool fullProfile, uint32_t gfxipMajor, uint32_t gfxipMinor
lcWavefrontSize64_ = !enableWave32Mode_;
// Enable fgs kernel arg segment only for a specific HW
fgs_kernel_arg_ = gfxipMajor == 9 && gfxStepping == 10;
fgs_kernel_arg_ = (!flagIsDefault(ROC_USE_FGS_KERNARG)) ?
ROC_USE_FGS_KERNARG : fgs_kernel_arg_;
// Override current device settings
override();