GPU Frameworks Engineer
Santa Clara Valley (Cupertino) , California , United States
Software and Services
Posted: Nov 19, 2020
Role Number: 200183064
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 Apple's hardware. This team announced Metal 2 which provides near-direct access to the graphics processing unit (GPU), enabling you to improve the graphics and compute potential of apps on iOS, macOS, and tvOS. Building upon an efficient low-overhead architecture with pre-compiled 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.
- - Experience with graphics or compute APIs
- - Experience with GPU architectures
- - Excellent programming skills and knowledge of C or C++
- - Excellent software design and problem solving skills
- - Excellent software debugging skills
- - Strong communication and collaboration skills
The GPU Software Framework team is looking for a highly motivated software engineer that wants to help redefine 3D graphics and compute technologies and the APIs that drive them. Our Metal, OpenGL, OpenCL, and GLKit frameworks are at the heart of the top games and applications on iOS and OS X. These technologies are also critical to achieving the outstanding visuals and buttery smooth animations seen in the fast paced iOS and OS X user interfaces. As part of this team, you will help to design and implement our graphics and compute APIs and frameworks. You'll work closely with the GPU driver teams to help define an e cient driver software architecture for our platforms. In addition, you'll collaborate with internal and external development teams to get the most out of their graphics and compute applications.
Education & Experience
Technical BS/MS degree or equivalent experience.
- - CPU and GPU performance analysis is a plus
- - Experience with modern real-time rendering techniques is a plus
- - Prior game development experience is a plus