mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-24 21:18:24 +08:00
feature: add bindless samplers support to level zero
- samplers using bindless adressing require patching bindless offsets to sampler states on kernel's cross thread data Related-To: NEO-10505 Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
420e1391b2
commit
f86d4220a5
@@ -55,9 +55,17 @@ void StateBaseAddressHelper<GfxFamily>::appendStateBaseAddressParameters(
|
||||
const auto surfaceStateCount = args.ssh->getMaxAvailableSpace() / sizeof(RENDER_SURFACE_STATE);
|
||||
args.stateBaseAddressCmd->setBindlessSurfaceStateSize(static_cast<uint32_t>(surfaceStateCount - 1));
|
||||
}
|
||||
}
|
||||
|
||||
args.stateBaseAddressCmd->setBindlessSamplerStateBaseAddressModifyEnable(true);
|
||||
if (args.dsh) {
|
||||
args.stateBaseAddressCmd->setBindlessSamplerStateBaseAddress(args.dsh->getHeapGpuBase());
|
||||
args.stateBaseAddressCmd->setBindlessSamplerStateBufferSize(args.dsh->getHeapSizeInPages());
|
||||
args.stateBaseAddressCmd->setBindlessSamplerStateBaseAddressModifyEnable(true);
|
||||
}
|
||||
} else {
|
||||
args.stateBaseAddressCmd->setBindlessSamplerStateBaseAddressModifyEnable(true);
|
||||
args.stateBaseAddressCmd->setBindlessSamplerStateBaseAddress(args.globalHeapsBaseAddress);
|
||||
args.stateBaseAddressCmd->setBindlessSamplerStateBufferSize(MemoryConstants::sizeOf4GBinPageEntities);
|
||||
}
|
||||
|
||||
auto &productHelper = args.gmmHelper->getRootDeviceEnvironment().template getHelper<ProductHelper>();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user