Principal ML Engineer - Large Scale Training Performance Optimization
The Role
We are looking for a Principal Machine Learning Engineer to join our Models and Applications team. If you are excited by the challenge of distributed training of large models on a large number of GPUs, and if you are passionate about improving training efficiency while innovating and generating new ideas, then this role is for you. You will be part of a world class team focused on addressing the challenge of training generative AI at scale.
The Person
The ideal candidate should have experience with distributed training pipelines, be knowledgeable in distributed training algorithms (Data Parallel, Tensor Parallel, Pipeline Parallel, Expert Parallel ZeRO), and be familiar with training large models at scale.
Key Responsibilities
- Train large models to convergence on AMD GPUs at scale.
- Improve the end-to-end training pipeline performance.
- Optimize the distributed training pipeline and algorithm to scale out.
- Contribute your changes to open source.
- Stay up-to-date with the latest training algorithms.
- Influence the direction of AMD AI platform.
- Collaborate across teams with various groups and stakeholders.
Preferred Experience
- Experience with ML/DL frameworks such as PyTorch, JAX, or TensorFlow.
- Experience with distributed training and distributed training frameworks, such as Megatron-LM, MaxText, TorchTitan.
- Experience with LLMs or computer vision, especially large models, is a plus.
- Experience with GPU kernel optimization is a plus.
- Excellent Python or C++ programming skills, including debugging, profiling, and performance analysis at scale.
- Experience with ML infra at kernel, framework, or system level.
- Strong communication and problem-solving skills.
Academic Credentials
A master's degree or PhD degree in Computer Science, Artificial Intelligence, Machine Learning, or a related field.
Location
San Jose, CA or Bellevue, WA preferred. May consider other US markets within proximity of US AMD offices. #HYBRID