Replies: 1 comment
-
The binary data is entirely runtime backend-specific - whatever the runtime side needs must be carried across. For SPIR-V/Vulkan we need to know how to map entry point ordinals into functions and subgroup sizes so we pack those along as well, while the CPU backend doesn't include any additional metadata as the executables are self-describing. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello, I am attempting to add a new device option to the IREE compiler and runtime. Specifically, I would like to insert the binary machine code for our device, which is similar to .spv or PTX code, into hal.executable.binary. However, I have noticed that the hal.executable.binary operation contains additional entry and end codes with serialized device codes, as seen in the SerializeExecutable pass.
As such, I would like to ask how the format of hal.executable.binary is structured, including the roles of the entry point and end codes. Additionally, I would like to know if there are any other considerations to keep in mind when inserting the new device code.
Thank you.
Beta Was this translation helpful? Give feedback.
All reactions