mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-05 17:20:26 +08:00
feature: Add ftrHeaplessMode flag
Pass hwInfo to isHeaplessModeEnabled and isForceBindlessRequired functions. Related-To: NEO-14526 Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
8961e8b50d
commit
504440fc4d
@@ -132,7 +132,7 @@ CommandQueue::CommandQueue(Context *context, ClDevice *device, const cl_queue_pr
|
||||
device->getDevice().getL0Debugger()->notifyCommandQueueCreated(&device->getDevice());
|
||||
}
|
||||
|
||||
this->heaplessModeEnabled = compilerProductHelper.isHeaplessModeEnabled();
|
||||
this->heaplessModeEnabled = compilerProductHelper.isHeaplessModeEnabled(hwInfo);
|
||||
this->heaplessStateInitEnabled = compilerProductHelper.isHeaplessStateInitEnabled(this->heaplessModeEnabled);
|
||||
|
||||
this->isForceStateless = compilerProductHelper.isForceToStatelessRequired();
|
||||
|
||||
@@ -28,7 +28,7 @@ bool ApiSpecificConfig::getGlobalBindlessHeapConfiguration(const ReleaseHelper *
|
||||
}
|
||||
|
||||
bool ApiSpecificConfig::getBindlessMode(const Device &device) {
|
||||
if (device.getCompilerProductHelper().isForceBindlessRequired()) {
|
||||
if (device.getCompilerProductHelper().isForceBindlessRequired(device.getHardwareInfo())) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -108,7 +108,7 @@ cl_int Program::linkBinary(Device *pDevice, const void *constantsInitData, size_
|
||||
auto exportedFunctionHeapId = linkerInput->getExportedFunctionsSegmentId();
|
||||
buildInfos[rootDeviceIndex].exportedFunctionsSurface = kernelInfoArray[exportedFunctionHeapId]->getGraphicsAllocation();
|
||||
auto &compilerProductHelper = pDevice->getCompilerProductHelper();
|
||||
if (compilerProductHelper.isHeaplessModeEnabled()) {
|
||||
if (compilerProductHelper.isHeaplessModeEnabled(pDevice->getHardwareInfo())) {
|
||||
exportedFunctions.gpuAddress = static_cast<uintptr_t>(buildInfos[rootDeviceIndex].exportedFunctionsSurface->getGpuAddress());
|
||||
} else {
|
||||
exportedFunctions.gpuAddress = static_cast<uintptr_t>(buildInfos[rootDeviceIndex].exportedFunctionsSurface->getGpuAddressToPatch());
|
||||
|
||||
@@ -110,7 +110,7 @@ std::string Program::getInternalOptions() const {
|
||||
CompilerOptions::concatenateAppend(internalOptions, CompilerOptions::preserveVec3Type);
|
||||
auto isDebuggerActive = pClDevice->getDevice().getDebugger() != nullptr;
|
||||
CompilerOptions::concatenateAppend(internalOptions, compilerProductHelper.getCachingPolicyOptions(isDebuggerActive));
|
||||
CompilerOptions::applyExtraInternalOptions(internalOptions, compilerProductHelper, NEO::CompilerOptions::HeaplessMode::defaultMode);
|
||||
CompilerOptions::applyExtraInternalOptions(internalOptions, hwInfo, compilerProductHelper, NEO::CompilerOptions::HeaplessMode::defaultMode);
|
||||
|
||||
return internalOptions;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user