machine learning and GPU programming engineers

Apple Inc.
yesterday

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate

Job location

Tech stack

Artificial Intelligence
Data analysis
C++
Compilers
Nvidia CUDA
Computer Programming
Distributed Computing Environment
Linux kernel
Machine Learning
Objective-C
TensorFlow
PyTorch
Gpu Programming
Backend
Hardware Infrastructure
Software Performance
Software Library

Job description

Team also works on GPU acceleration of ML Training frameworks such as PyTorch and JAX using Metal runtime and device backend. We are looking for engineers with systems background who are deeply passionate about building scalable, efficient, and production-grade solutions tailored for high-throughput GPU execution., Our team is seeking extraordinary machine learning and GPU programming engineers who are passionate about providing robust compute solutions for accelerating Machine learning libraries on Apple Silicon. Role has the opportunity to influence the design of compute and programming models in next generation GPU architectures.

  • Responsibilities:

Work on cutting-edge ML inference framework project and optimize code for efficient and scalable ML inference using distributed compute strategies such as data, tensor, pipeline and expert parallelism.

Develop kernel and compiler level optimizations and perform in-depth analysis to ensure the best possible performance across Server hardware families.

Apply advanced model optimization techniques including speculation, quantization, compression, and others to maximize throughput and minimize latency.

Collaborate closely with hardware, compiler, and systems teams to align software performance with hardware capabilities.

Analyze and improve performance metrics such as end-to-end latency, TTFT, TBOT, memory footprint, and compute efficiency.

Implement features of Metal device backend for ML training acceleration technologies

Requirements

3+ years of programming and problem-solving experience with C/C++/ObjC

Experience with GPU kernel development & optimizations using compute programming models such as Metal, CUDA etc.

Experience with system level programming and computer architecture

Experience with Distributed training or inference techniques

Preferred Qualifications

Experience with graph compilers such as Triton, OpenXLA or LLVM/MLIR is a plus

Contributions to an AI framework such as PyTorch, JAX or Tensorflow is a plus

Good understanding of machine learning fundamentals

Apply for this position