Apple - Austin, TX

posted 5 months ago

Full-time - Mid Level
Austin, TX
Computer and Electronic Product Manufacturing

About the position

As a Silicon Validation Software Engineer at Apple, you will play a crucial role in the design and manufacturing of next-generation, high-performance, power-efficient processors and system-on-chip (SoC) technologies. Your work will ensure that Apple products and services can efficiently handle the tasks that make them beloved by millions of users. You will be part of a talented team of software engineers with diverse backgrounds, including graphics, video encoding, video processing, file systems, CPUs and caching, kernel programming, and embedded systems. Together, you will develop graphics validation software and integrate it into the system-level test environment, contributing to the overall performance and reliability of Apple’s devices. In this position, you will be responsible for writing shaders that stress the GPU and generate high bandwidth traffic to and from the memory subsystem. Your deep understanding of GPU architecture will enable you to write tests that effectively stress the pipeline and exercise the interaction between the GPU and various IP blocks on the SoC. You will utilize necessary driver and firmware APIs to compile shaders and manage operations that move data around in the SoC using GPU threads and SIMD groups. A solid grasp of the different levels of GPU memory hierarchy, including Shared and Global memory, will be essential as you debug SoC software and hardware issues and perform system-level validation. This role requires a validation mentality characterized by meticulousness, curiosity, and persistence. You will also have the opportunity to implement and run machine learning and large language model workloads for GPU characterization, further enhancing the capabilities of Apple’s cutting-edge technology. An understanding of the display pipeline will be considered a plus, as it will complement your expertise in the field.

Responsibilities

  • Write shaders that stress the GPU and generate high bandwidth traffic to and from the memory subsystem.
  • Apply deep understanding of GPU architecture to write tests that stress the pipeline and exercise the interaction between the GPU and different IP blocks on the SoC.
  • Use necessary driver and firmware APIs to compile shaders and manage operations to move data around in the SoC using GPU threads/SIMD groups.
  • Understand different levels of GPU memory hierarchy (Shared, Global, etc.).
  • Debug SoC software and hardware issues and perform system-level validation.
  • Implement and run ML/LLM workloads for GPU characterization.

Requirements

  • BS degree in a relevant field.
  • Minimum of 3 years of relevant industry experience.
  • Experienced with Graphics, OpenGL, and CUDA.
  • Experienced with image processing, memory hierarchies, and compilers.
  • Strong C/C++ programming skills.
  • Proficient in Python and GNU Make.
  • Deep understanding of compute systems, operating systems, and computer architecture.
  • Passionate about writing code close to the hardware and debugging.
  • In-depth knowledge and experience in SoC system level validation and debugging of SoC software and hardware issues.

Nice-to-haves

  • Understanding of the Display pipeline is a plus.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service