
Rolling out last week was a new version of IREE as the Intermediate Representation Execution Environment for MLIR-based end-to-end compiler and run-time for lowering machine learning models into a unified IR and working across different hardware/driver stacks. Making IREE 3.12 notable is a rewrite to its Vulkan code.
AMD engineer Ben Vanik rewrote their Vulkan HAL that is much improved over IREE's prior Vulkan driver. This new Vulkan code targets Vulkan 1.3 and has native queue paths, push descriptors, and a descriptor-free buffer device address dispatch ABI. With this new Vulkan code path, the Broadcom VideoCore VII GPU used by the Raspberry Pi is supported plus Arm Mali 5th Gen and LLVMpipe are also newly supported too.
Also on the AMD side with IREE 3.12 is a new native HSA HAL driver that is experimental and opt-in. This is a direct HSA/ROCR back-end using HSA queues and AQL packets. More details on that via this pull request.
IREE 3.12 also brings a rewrite to the execution path for its CPU back-end, Ada and Blackwell compiler targets for NVIDIA, and also AMD CDNA5/MI455X and RDNA3 chip details in the compiler code.
More details on the big IREE 3.12 release via GitHub.