About this role
In this role, you will design, implement, and productize advanced backend compiler optimizations for Apple Silicon GPUs, working across the full lifecycle from early architecture exploration and prototyping through production shipping. You will partner directly with GPU architects to explore and evaluate instruction set and micro-architecture proposals on future hardware - often years before it exists in silicon - using simulators and emulation environments, and your findings will help shape our future hardware. You will also collaborate cross-functionally with hardware and software teams to resolve complex compiler and performance challenges, driving optimizations to completion. The GPU compiler backend you help build ships in every Apple device with a GPU, directly impacting graphics, gaming, and machine learning workloads across the entire product line.
Description
Our GPU Compiler Backend team is responsible for the design, implementation, and productization of the compiler that generates optimized code for Apple Silicon GPUs. We build synergies with hardware and software teams, from early architecture exploration through production hardening and shipping, and serve as the last line of defense for performance and correctness before code reaches customers.
We are seeking a skilled Compiler Backend Engineer to join our team. This role will involve doing hands-on experimental work to define and enable new GPU architecture features, and driving compiler optimization projects to completion, resolving complex, ambiguous production issues escalated by key partners (ProApps, Machine Learning, and Gaming). You will work on an LLVM-based compiler backend that generates optimized GPU binaries for graphics and compute workloads across every Apple device with a GPU.
Responsibilities:
Design, implement, and productize backend compiler optimizations for Apple Silicon GPUs
Independently investigate and resolve complex, open-ended performance and correctness issues affecting key partner teams
Partner with architects and micro-architects to co-design instruction set and micro-architecture features: build compiler prototypes, run experiments, and use the results to influence hardware design decisions before they are locked
Bring up and validate compiler support for future GPU architectures on simulators and pre-silicon platform
Model and quantify the performance impact of proposed hardware features on representative graphics, gaming, and ML workloads, and communicate trade-offs to hardware and software stakeholders
Stay current with compiler technology advancements and apply relevant insights to our development process
Mentor and collaborate with fellow engineers across the team
Preferred Qualifications
Hands-on experience developing LLVM-based compiler backends
Experience with instruction selection, instruction schedulers, and register allocators for CPU or GPU compiler backends
Experience bringing up a compiler for a new or unreleased architecture, or working with instruction set definitions, simulators, or emulation environments
Experience collaborating with hardware architects on ISA or micro-architecture design, including performance modeling and analysis of proposed features
Experience driving production compiler issues to resolution in a fast-paced environment
Minimum Qualifications
Experience with modern C++ programming
BS with 3+ years experience, MS, or PhD in computer science or related field
Strong background in compiler backend technologies (LLVM preferred)
Knowledge of GPU architectures and how they differ from CPU architectures
Demonstrated autonomy and ownership resolving ambiguous, open-ended technical challenges
Excellent written and verbal communication skills
Pay & Benefits
At Apple, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $150,400 and $277,600, and your base pay will depend on your skills, qualifications, experience, and location.
Apple employees also have the opportunity to become an Apple shareholder through participation in Apple's discretionary employee stock programs. Apple employees are eligible for discretionary restricted stock unit awards, and can purchase Apple stock at a discount if voluntarily participating in Apple's Employee Stock Purchase Plan. You'll also receive benefits including: Comprehensive medical and dental coverage, retirement benefits, a range of discounted products and free services, and for formal education related to advancing your career at Apple, reimbursement for certain educational expenses - including tuition. Additionally, this role might be eligible for discretionary bonuses or commission payments as well as relocation. Learn more about Apple Benefits
Note: Apple benefit, compensation and employee stock programs are subject to eligibility requirements and other terms of the applicable plan or program.