Job Description: THE ROLE: THE PERSON: KEY RESPONSIBILITIES:
- Contribute to compiler projects like IREE, MLIR, LLVM.
- Quantitively analyze GPU kernel performance, identify bottlenecks, propose designs to improve, prototype and productionize solutions.
- Profiling and improving kernel performance, e.g., matmul, convolution, matvec, reduction, etc.
- Follow industry directions and adopt emerging technologies in compilers kernel libraries, e.g., Triton, BLAS libraries, etc., and directions in emerging GPU hardware.
- Collaborate with teams specializing in graph- and model-level optimizations.
- Propose and implement principled compiler optimizations at the proper level.
PREFERRED EXPERIENCE:
-
Very good knowledge of the C++ and Python programming languages
-
Familiarity with MLIR, IREE, LLVM, or similar compiler frameworks
-
Familiarity with low-level profiling tools
-
Familiarity with ML compiler techniques like tiling, distribution, vectorization, etc., and/or traditional compiler optimization techniques like instruction scheduling, register allocation, peephole optimizations
-
Understanding of GPU architectures and the GPU programming models
-
Experience with writing high performance GPU kernels and GPU performance tuning
-
Open-source development ethos
-
Bachelor's or Master's degree in Computer/Software Engineering, Computer Science, or related technical discipline
Advanced Micro Devices