Use latest Level Zero RT API#595
Conversation
|
There are still occurrences of wrong extension name: kernels/level_zero/ze_api.h:#define ZE_RTAS_BUILDER_EXP_NAME "ZE_experimental_rtas_builder" And this here: sycl/rthwif_embree_builder.cpp: void* zeRTASInitExp(sycl::device device, sycl::context context) Also package name under Ubuntu is libze-intel-gpu-raytracing, best add this in addition to intel-level-zero-gpu-raytracing: throw std::runtime_error("No driver support for acceleration structure building found. Please install a recent driver. On Linux, make sure that the package intel-level-zero-gpu-raytracing is installed."); And we are actually still using some other experimental extension: ZE_RELAXED_ALLOCATION_LIMITS_EXP_FLAG_MAX_SIZE For that one we should query if the extension is supported, and only use that special alloc mode if extension is there. Also we should ask Level Zero team to make this an EXT, this relatex buffer allocation size is important. |
| relaxed.pNext = &rt_desc; | ||
| relaxed.flags = ZE_RELAXED_ALLOCATION_LIMITS_EXP_FLAG_MAX_SIZE; | ||
|
|
||
| const bool hasRelaxedAllocationLimits = hasDriverExtension(hDriver, ZE_RELAXED_ALLOCATION_LIMITS_EXP_NAME); |
There was a problem hiding this comment.
Could you please move that line to DeviceGPU constructor?
const bool hasRelaxedAllocationLimits = hasDriverExtension(hDriver, ZE_RELAXED_ALLOCATION_LIMITS_EXP_NAME);
Looks expensive to iterate over all extensions over and over.
|
There is a problem did you actually have a look at the CI? There are issues: Embree incompatible SYCL devices: Seems the EXR builder extension is not found. Not sure how that can be, best check with Krzystof how old latest public driver we use is. Also try if it works with recent gfx-master. |
No description provided.