Sr. Software Development Engineer
Job Description
WHAT YOU DO AT AMD CHANGES EVERYTHING
We care deeply about transforming lives with AMD technology to enrich our industry, our communities, and the world. Our mission is to build great products that accelerate next-generation computing experiences – the building blocks for the data center, artificial intelligence, PCs, gaming and embedded. Underpinning our mission is the AMD culture. We push the limits of innovation to solve the world’s most important challenges. We strive for execution excellence while being direct, humble, collaborative, and inclusive of diverse perspectives.
AMD together we advance_
AI GPU Compiler Development Engineer
THE ROLE:
We are building IREE as an open-source compiler and runtime solution to productionize ML for a variety of use cases and hardware targets: https://iree.dev/. In particular, we aim to provide broad and performant GPU coverage, from datacenter to mobile, via a unified open-source software stack. Our team develops an end-to-end AI solution: from ML framework integration, down to generating efficient kernels. There is no shortage of intriguing technical challenges to tackle, and there are abundant chances to collaborate with industry experts working at different layers of the stack. If this sounds interesting to you, please don’t hesitate to reach out to us!
THE PERSON:
An ideal candidate should have an interest in compiler optimizations and/or writing kernels. They should be excited to dive deep into the GPU-specific optimizations and GPU architectures. They should be comfortable conducting performance experiments (profiling and benchmarking). Most importantly, the candidate must be excited to continuously learn and work across project and team boundaries.
KEY RESPONSIBILITIES:
- Contribute to compiler projects like IREE, MLIR, LLVM.
- Quantitively analyze GPU kernel performance, identify bottlenecks, propose ideas to improve, prototype and productionize solutions.
- Profiling and improving kernel performance, e.g., matmul, convolution, matvec, reduction, etc.
- Collaborate with teams specializing in graph- and model-level optimizations.
- Implement principled compiler optimizations at the proper level.
PREFERRED EXPERIENCE:
- Good knowledge of the C++ and Python programming languages
- Familiarity with a compiler framework, e.g., MLIR, IREE, LLVM, or similar
- Familiarity with benchmarking and profiling code
- Familiarity with traditional compiler optimization techniques like instruction scheduling, register allocation, peephole optimizations
- Understanding of GPU architectures and the GPU programming models
- Open-source development ethos
ACADEMIC CREDENTIALS:
- Bachelor’s or Master’s degree in Computer/Software Engineering, Computer Science, or related technical discipline
#LI-G11
#LI-HYBRID
Benefits offered are described: AMD benefits at a glance.
AMD does not accept unsolicited resumes from headhunters, recruitment agencies, or fee-based recruitment services. AMD and its subsidiaries are equal opportunity, inclusive employers and will consider all applicants without regard to age, ancestry, color, marital status, medical condition, mental or physical disability, national origin, race, religion, political and/or third-party affiliation, sex, pregnancy, sexual orientation, gender identity, military or veteran status, or any other characteristic protected by law. We encourage applications from all qualified candidates and will accommodate applicants’ needs under the respective laws throughout all stages of the recruitment and selection process.