GPU Performance Modeling Engineer
Role details
Job location
Tech stack
Job description
Role Number:200653660-2114Imagine what you could do here. At Apple, new ideas have a way of becoming extraordinary products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. Multifaceted, amazing people and inspiring, innovative technologies are the norm here. The people who work here have reinvented entire industries with all Apple Hardware products. The same passion for innovation that goes into our products also applies to our practices strengthening our commitment to leave the world better than we found it. Join us to help deliver the next groundbreaking Apple product! Do you love working on challenges that no one has solved yet? At Apple, we are pushing the boundary of what is possible to improve the lives of our customers. We are seeking highly motivated, innovative, and confident individuals to join the GPU Platform Architecture Team; we are a group that is driving advanced exploration for next generation GPU architectures. In this highly visible role, you will be at the centre of a chip design effort working with all disciplines, with a critical impact on getting high performant products to millions of customers quickly., As a GPU Performance Modeling Engineer, you will join a team that is defining and optimising Apple's GPU architecture. With others, you will seek out areas for improvement while collecting data and measurements that either confirm the idea or rule it out. You will collaborate with experienced engineers and micro-architecture to assess the feasibility of ideas, refine ideas, and seed new ones. The role requires the analysis of interesting workloads across existing and new product categories to identify bottlenecks and opportunities for improvement. You'll be architecting new features and brainstorming novel ideas to boost performance. You'll collaborate with world-class GPU and SoC engineers to steer and improve the implementation of GPU simulators and performance/energy models used for research, performance/power analysis, and microarchitecture tuning. We also cross-collaborate as a larger architecture and performance team to maintain and improve the simulation environment and look for ways to boost the productivity of the entire team. In this position, you will be encouraged to: - Contribute towards performance/power modeling proposed architectural solutions and features - Gather, analyse, and validate measured and simulated results to compare architectural design alternatives - Carefully analyze and present results to enable data specific architecture/design - Work with the multi-functional teams to develop architectural solutions
Requirements
- Knowledge and interest on computer architecture and micro-architecture
- Strong coding skills including object-oriented programming with C and C++
- Strong understanding of software design patterns and common data structures and algorithms
- Knowledge of scripting languages such as Perl, Python, or Ruby
- Strong communication, influence, and negotiation skills to ensure the right data driven decisions are taken
- BS/MS in Computer Engineering, Computer Science or equivalent is required, * Knowledge of GPU architecture
- Curiosity about machine learning and classification algorithm
- Knowledge of performance modelling, logic design and power