تخطي إلى المحتوى

CPU Performance Engineer, Platform Architecture

Overview
Appleapple.comPosted 4 weeks ago
Austin, TX, USمن مقر العمل
Quick apply
مستوى الخبرة
Senior
نوع الوظيفة
دوام كامل
الخبرة العملية
10+ years
التخصص
General engineering

نبذة عن الوظيفة

Do you have an uncommon desire to seek out and solve exceedingly difficult challenges rather than the easy ones? Do you believe that truly valuable and meaningful accomplishments are the result of pushing the limits of perseverance? Do you believe that a world-class team with relentless drive can surpass even their own high expectations? We do! But we also realize this job isn’t for everyone. What we do isn’t easy but you don’t take the easy path. We are seeking a highly motivated, innovative, and confident individuals to join the CPU Architecture and Performance Team; we are a group that is driving advanced exploration for next generation iPhone, iPad, and Mac CPU architectures!

As a CPU Performance Engineer with a focus on CPU micro-architecture, you will be part of a team that is pushing the boundaries of innovation in the area of branch prediction, code/data prefetchers, novel prediction schemes and CPU pipelines. 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 CPU designers in micro-architecture and RTL to assess the feasibility of ideas through modeling, refine ideas and model correlation, and seed new ideas. The role requires the analysis of specific single-threaded and multi-threaded workloads across existing and new product categories to identify bottlenecks and opportunities for improvement. We collaborate as a larger CPU architecture and performance team to maintain and improve the simulation environment to enable data driven decisions and look for ways to boost the productivity of the entire team.

Requirements

10+ years of relevant industry experience MS or PhD in Electrical or Computer Engineering or Computer Science Understanding of common data structures and algorithms Knowledge in software design patterns Familiarity with SIMD and vector architectures Knowledge of OS internals and compiler technologies Comfortable in an environment of uncertainty and able to walk through ambiguities Communication, influence and negotiation skills

BS degree Experience with CPU architecture and micro-architecture Experience in performance and/or power simulation environments Coding experience including object-oriented programming with C and C++ Experience in scripting languages such as Perl or Python

Key skills

  • Negotiation
  • C++
  • Perl
  • Python