What is Luthier?[color=var(--fgColor-accent, var(--color-accent-fg))]
Luthier is a dynamic binary instrumentation framework for writing tools targeting AMD GPUs. It supports (or aims to support):
- Analyzing the content of the code objects loaded on the GPU at runtime; This includes kernels, device functions, static variables, etc.
- Inserting calls to (multiple) device instrumentation functions.
- Removal/modification/addition of instructions.
- Querying/modification of the GPU's ISA visible state