IOS GPU Driver Engineer
Santa Clara Valley (Cupertino), California, United States
Not Available
Apple’s GPU Software team provides the graphics software foundation across all of
Apple's innovative products, including iPhone, iPad, Apple TV, Mac, and Watch. Our
responsibilities encompass the frameworks, developer tools, and hardware drivers for
the GPU and Display devices on all of Apple’s hardware.
This team recently announced Metal 2 which provides near-direct access to the
graphics processing unit (GPU), enabling you to maximize the graphics and compute
potential of apps on iOS, macOS, and tvOS. Building upon an efficient low-overhead
architecture with precompiled shaders, fine-grained resource control, and multithreading
support, Metal 2 further boosts performance by enabling the GPU to take more control
of the rendering pipeline. Moving beyond just graphics, Metal 2 provides deep support
for GPU-accelerated machine learning and offers enhanced developer tools that make it
even easier to debug, optimize, and deploy Metal apps. On Mac, Metal 2 adds support
for virtual reality (VR) rendering and external GPUs, and provides new APIs and
optimizations to help developers embrace these emerging technologies within their
apps.
Key Qualifications
- Knowledge of GPU and CPU architectures
- Knowledge of GPU compilation workflows
- Excellent programming skills and knowledge of C/C++
- Excellent problem solving and debugging skills
- Strong communication and teamwork skills
- Experience with OpenGL, OpenCL, Direct3D, CUDA or other GPU programming APIs
- Experience with software performance analysis, optimizations and low- level
- programming
Description
The team is responsible for building graphics drivers for iOS devices collaborating with
both the compiler and hardware groups to bring Metal to life.
The ideal candidate should have previous GPU driver or GPU compiler experience and
be willing to learn about the other.
Responsibilities:
• Translate generic shader IR to machine specific IR
• Integrate GPU compiler with driver
• Implement OpenGL ES/Metal drivers
• Debug and analyze code generation issues
• Validate GPU features for new SoCs (post-silicon bring-up) • Analyze possible future
GPU architectures
Education & Experience
Technical BS/MS degree
Additional Requirements
- A plus:
- Experience with driver or operating system development
- Experience with parallel and asynchronous processing
- Experience with hardware bring-ups