GPU Architecture Opportunities at Apple

United States
Hardware

Summary

Posted:
Role Number:200499339
Imagine what you can do here! At Apple, new ideas have a way of becoming extraordinary products very quickly. Bring passion and dedication to your job, and there’s no telling what we can accomplish together. Do you love crafting elegant solutions to highly complex challenges? Can you see the importance in every detail? At Apple, our Platform Architecture group is responsible for creating next generation GPU designs that contribute to the development of our world renowned hardware and software architectures. The GPU Architecture team is tasked with exploring and defining architectures that will push the performance and efficiency of our GPU designs to an even more advanced level. The modeling team is composed of experts with deep experience in architecture, modeling, graphics APIs, compilers, drivers, and workload analysis. The drive to learn about and contribute to multiple focus areas is highly desirable. We define the GPU designs from our smallest to largest devices, while working cross-functionally with various software and system partners across Apple to improve the end user experience. The team has offices in Cupertino, CA, San Diego, CA, Austin, TX, Orlando, FL, and Cambridge, MA.

Key Qualifications

  • Some of the relevant degrees include: Computer Science, Computer Engineering, Electrical Engineering, or related degrees
  • We typically seek experience in the following areas:
  • Strong coding skills
  • Strong communication and collaboration skills
  • Attention to detail
  • Desire to expand your skills to new areas

Description

Below are the various areas you can explore within the GPU Platform Architecture team: GPU Workload Integration and Analysis: This area focuses on ensuring our simulation environment can run the latest and most advanced workloads. Integrating these tests requires knowledge of graphics APIs, as well as drivers, compilers, and GPU hardware. Engineers in this type of role would analyze the various performance characteristics of numerous applications and benchmarks to provide feedback on various hardware designs. Additionally, they would create new targeted tests to verify critical components of the design as performing as expected. We typically look for experience working with DirectX, Vulkan, or Metal. GPU Modeling: This area entails implementing forward looking GPU architectural features in a high-performance C++ model. It involves working with architects and micro-architects to prototype and analyze proposed features for future GPUs. This would require individuals who can write highly performant C++ code to take architectural specifications and turn them into a functional and performance model of the GPU. Here, strong C++ coding skills and experience modeling GPUs or CPUs is essential. GPU Simulation Environment: This area is all about pushing forward the tools and methodologies used for performance exploration, bottleneck identification, and insight discovery. From the GPU simulator to the visualization tools it feeds, advancements to the tools and methodologies boost the output of the entire team. Areas of work are varied and include C++ and Python software engineering, GPU simulation methodologies, execution-driven model development, data analysis and visualization tool development, leadership in CI/CD, runtime optimization, and more

Education & Experience

Additional Requirements