We live in a mobile and device-driven world where Deep Learning technology enables a new class of applications. Are you passionate about enabling unique user experiences on Apple products, such as Apple Vision Pro, iPhone, iPad, Apple Watch, and the Mac? Imagine the countless possibilities powered by Artificial Intelligence! In our Apple Neural Engine software team, we are dedicated to providing hardware acceleration using the Apple Neural Engine to enable real-time, low power, and high-performance execution of Deep Learning workloads. Our success is the result of very multifaceted people working in an environment which cultivates creativity, partnership, and cross-functional collaboration. These elements come together to make Apple an amazing environment for motivated people to do the greatest work of their lives! Will you help us design the next generation of revolutionary Apple Products?
Description We develop compiler technology to accelerate deep learning applications for Apple products. In this role, you will be empowered to:
Architect and develop the compiler for Apple proprietary Neural Engine Accelerator architecture, to enable inference of deep learning networks onto this architecture with an emphasis on performance and power.Bring up new hardware silicon and add support in the compiler for these hardware features.Work on bringing the compiler code to production quality and enable a wide range of applications of deep learning technology for internal clients and 3rd party developers.Evaluate existing hardware blocks and work closely with the platform architecture team on the definition of new hardware features, and hardware specification review.Work with the micro-architecture design team to understand the functional and performance goals of the design.Architect and lead complex compiler features and mentor engineers.Minimum Qualifications In-depth working knowledge of compiler architecture, front-end and middle-end optimizations, scheduling, register allocation, back-end code generation.Experience with IR and/or programming language design, esp. experience with MLIR and LLVM.High level C++ programming expertise and experience working in a large and complex software stack with a consistent track record of building high quality production software.Bachelor's degree in Computer Science, Computer Engineering or equivalent and 5+ years experience shipping products.Preferred Qualifications Experience with compiling for distributed and parallel execution environment including distributed execution, shared memory, synchronization, etc.Experience with neural networks inference on dedicated SoC or GPU is highly desired.Understanding of JIT techniques for dynamic optimization and execution of code.Ability to analyze and optimize program execution paths.Apple is an equal opportunity employer that is committed to inclusion and diversity. We take affirmative action to ensure equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant.
#J-18808-Ljbffr