iOS GPU Driver Engineer

Santa Clara Valley (Cupertino), California, United States
Software and Services

Summary

Posted: Oct 10, 2018
Weekly Hours: 40
Role Number: 113548785
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

  • Excellent programming skills and knowledge of C/C++
  • Solid understanding of real-time graphics concepts and algorithms
  • Excellent software design, problem solving and debugging skills
  • Knowledge of GPU and CPU architectures
  • Experience with Metal, DirectX, Vulkan or OpenGL
  • Development experience on Unix, Linux or macOS
  • Experience with driver or operating system development
  • Low-level programming experience
  • Experience analyzing and optimizing the performance of 3D applications
  • Strong communication and teamwork skills

Description

Metal is Apple’s foundational graphics API for GPU programming that provides up to a 10x increase in efficiency by minimizing CPU overhead. This dramatic increase in efficiency allows developers to achieve greater realism, detail, and interactivity in their applications and games. The team is responsible for building graphics drivers for iOS, tvOS, and watchOS devices through collaboration with compiler and hardware groups. They are also responsible for optimizing those drivers through analysis and collaboration with both internal and external developers. The ideal candidate should have previous GPU driver experience or low-level game console programming. Responsibilities include: - In-depth performance analysis of Metal and OpenGL ES drivers - Developing Metal and OpenGL ES drivers - Working with compiler and compute teams to analyze performance, implement features and debug issues - Working with developers to optimize their applications and games - Validating GPU features for new SoCs (post-silicon bring-up) - Analyzing possible future GPU architectures and rendering algorithms

Education & Experience

Technical BS degree preferred Apple is an Equal Opportunity Employer that is committed to inclusion and diversity. We also take affirmative action to offer employment and advancement opportunities to all applicants, including minorities, women, protected veterans, and individuals with disabilities. Apple will not discriminate or retaliate against applicants who inquire about, disclose, or discuss their compensation or that of other applicants.

Additional Requirements

  • • Excellent programming skills and knowledge of C/C++