Principal Machine Learning Compiler Engineer

Feb 02, 2024
San Jose, United States
... Not specified
... Intermediate
Full time
... Office work


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_




The Role
AMD is looking for a skilled and experienced engineer to join a core team of incredibly talented industry specialists working on developing a cutting-edge machine learning model compiler targeting AMD Inference Accelerator AIE hardware devices.  The compiler needs to take a model written in PyTorch, TensorFlow, ONNX or JAX and produce optimized control and executable code for AIE VLIW processor array. Additionally, the compiler needs to handle partitioning between x86 and hardware accelerator, generate optimal code for AMD x86 CPU using AMD ZenDNN, and generate code to interface with AMD AIE specific runtime and driver.
The Person
The ideal candidate should be passionate about implementing and improving effective algorithms and techniques to create and enhance compiler and runtime for machine learning and possess leadership skills to drive sophisticated issues to resolution. The candidate should be able to communicate effectively and work optimally with different teams across AMD.
Key Responsibilities

  • Implement and improve passes in the compiler
  • Integrate compiler and compiled model with ML Frameworks (such as PyTorch and Tensorflow)
  • Implement model partitioning in ML Frameworks and/or MLIR
  • Implement runtime to distribute work to and collect results from x86 cores and the array of AIE cores
  • Mentor and provide guidance to others
  • Learn latest industry trends and bring new ideas to the team
  • Design and develop new groundbreaking AMD technologies
  • Debugging/fix existing issues and research alternative, more efficient ways to accomplish the same work
  • Develop technical relationships with peers and partners

Preferred Experience (post College)

  • Strong object-oriented programming background, C/C++ and Python
  • ML Compiler and Runtime technologies: OneDNN, MLIR, XLA, OpenXLA, IREE, OpenAI Triton compiler
  • Compiler building skills
  • Code generation for a ML hardware accelerator
  • GPU code generation
  • Machine Learning concepts and model development experience
  • Understanding of PyTorch, Tensorflow, ONNX, JAX etc.
  • Ability to write high quality code with a keen attention to detail
  • Experience with modern concurrent programming and threading APIs
  • Experience with software development processes and tools such as debuggers, source code control systems (GitHub) and profilers is a plus
  • Effective communication and problem-solving skills
  • Motivating leader with good interpersonal skills 

Academic Credentials

  • Bachelor’s, Master's or PhD degree in Computer Science, Computer Engineering, Electrical Engineering, or equivalent

 

Location: San Jose, CA

 

#LI-EM1




At AMD, your base pay is one part of your total rewards package.  Your base pay will depend on where your skills, qualifications, experience, and location fit into the hiring range for the position. You may be eligible for incentives based upon your role such as either an annual bonus or sales incentive. Many AMD employees have the opportunity to own shares of AMD stock, as well as a discount when purchasing AMD stock if voluntarily participating in AMD’s Employee Stock Purchase Plan. You’ll also be eligible for competitive benefits described in more detail here.

 

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.

At AMD, your base pay is one part of your total rewards package.  Your base pay will depend on where your skills, qualifications, experience, and location fit into the hiring range for the position. You may be eligible for incentives based upon your role such as either an annual bonus or sales incentive. Many AMD employees have the opportunity to own shares of AMD stock, as well as a discount when purchasing AMD stock if voluntarily participating in AMD’s Employee Stock Purchase Plan. You’ll also be eligible for competitive benefits described in more detail here.

 

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.

The Role
AMD is looking for a skilled and experienced engineer to join a core team of incredibly talented industry specialists working on developing a cutting-edge machine learning model compiler targeting AMD Inference Accelerator AIE hardware devices.  The compiler needs to take a model written in PyTorch, TensorFlow, ONNX or JAX and produce optimized control and executable code for AIE VLIW processor array. Additionally, the compiler needs to handle partitioning between x86 and hardware accelerator, generate optimal code for AMD x86 CPU using AMD ZenDNN, and generate code to interface with AMD AIE specific runtime and driver.
The Person
The ideal candidate should be passionate about implementing and improving effective algorithms and techniques to create and enhance compiler and runtime for machine learning and possess leadership skills to drive sophisticated issues to resolution. The candidate should be able to communicate effectively and work optimally with different teams across AMD.
Key Responsibilities

  • Implement and improve passes in the compiler
  • Integrate compiler and compiled model with ML Frameworks (such as PyTorch and Tensorflow)
  • Implement model partitioning in ML Frameworks and/or MLIR
  • Implement runtime to distribute work to and collect results from x86 cores and the array of AIE cores
  • Mentor and provide guidance to others
  • Learn latest industry trends and bring new ideas to the team
  • Design and develop new groundbreaking AMD technologies
  • Debugging/fix existing issues and research alternative, more efficient ways to accomplish the same work
  • Develop technical relationships with peers and partners

Preferred Experience (post College)

  • Strong object-oriented programming background, C/C++ and Python
  • ML Compiler and Runtime technologies: OneDNN, MLIR, XLA, OpenXLA, IREE, OpenAI Triton compiler
  • Compiler building skills
  • Code generation for a ML hardware accelerator
  • GPU code generation
  • Machine Learning concepts and model development experience
  • Understanding of PyTorch, Tensorflow, ONNX, JAX etc.
  • Ability to write high quality code with a keen attention to detail
  • Experience with modern concurrent programming and threading APIs
  • Experience with software development processes and tools such as debuggers, source code control systems (GitHub) and profilers is a plus
  • Effective communication and problem-solving skills
  • Motivating leader with good interpersonal skills 

Academic Credentials

  • Bachelor’s, Master's or PhD degree in Computer Science, Computer Engineering, Electrical Engineering, or equivalent

 

Location: San Jose, CA

 

#LI-EM1

COMPANY JOBS
1767 available jobs
WEBSITE