Apple - Cupertino, CA

posted 3 months ago

Full-time - Mid Level
Cupertino, CA
Computer and Electronic Product Manufacturing

About the position

The Machine Learning and Platforms Technology (MLPT) team is part of Apple's AIML Organization, focusing on building the inference stack that runs all machine learning (ML) networks on Apple Silicon. This team is responsible for writing the converter and compiler that translates source network definitions into formats that execution units in hardware can interpret. Additionally, the team develops tools for network optimizations and writes the runtime that schedules and manages execution on hardware. They also provide guidance for hardware/software co-design of current and future workloads alongside hardware accelerators. The MLPT team collaborates cross-functionally with various partner teams within Apple, including CPU, GPU, Neural Engine, speech understanding, Camera, Photos, and VisionPro, as well as with external app developers. Core ML is an example of an external-facing product developed by this team. In this role, you will delve into the latest research on efficient on-device inference, prototyping new approaches to enhance inference on critical models without compromising accuracy. You will conduct deep dive analyses of both the software stack and hardware, devising innovative methods for improvement. The role also involves evaluating ML inference performance across a spectrum of devices, from small wearables to the largest Apple Silicon Macs.

Responsibilities

  • Write the converter and compiler for translating source network definitions to hardware-interpretable formats.
  • Develop tools for network optimizations and write the runtime for scheduling and managing execution on hardware.
  • Provide guidance for hardware/software co-design of current and future workloads alongside hardware accelerators.
  • Collaborate cross-functionally with partner teams within Apple and external app developers.
  • Conduct research on efficient on-device inference and prototype new approaches to improve inference accuracy.
  • Perform comprehensive analyses of software and hardware for performance, power, and accuracy optimizations.

Requirements

  • Understanding of the basics of machine learning and familiarity with adapting and training neural networks using frameworks like PyTorch, TensorFlow, or JAX.
  • Knowledge of computer architecture (CPU and GPU) and performance modeling and analysis of computer systems.
  • Experience with machine learning systems, particularly for on-device inference scenarios.
  • Ability to perform comprehensive analyses starting from first principles of deep learning techniques and benchmarking for system optimizations.
  • Proficiency in programming and software design skills, particularly in C/C++ and/or Python.
  • Excellent communication skills and a collaborative, product-focused mindset.

Nice-to-haves

  • Experience with performance modeling and analysis of computer systems.
  • Familiarity with benchmarking techniques for testing and proving ideas in machine learning.

Benefits

  • Comprehensive medical and dental coverage.
  • Retirement benefits including 401k.
  • Discounted products and free services.
  • Reimbursement for certain educational expenses, including tuition.
  • Discretionary bonuses or commission payments.
  • Opportunity to purchase Apple stock at a discount through the Employee Stock Purchase Plan.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service