Performance and Modeling Engineer
Summary
Imagine what you can do here. Apple is a place where extraordinary people gather to do their lives best work. Together we create products and experiences people once couldn't have imagined, and now, can't imagine living without. It's the diversity of those people and their ideas that inspires the innovation that runs through everything we do.
Description
APPLE INC has the following available in Austin, Texas. Develop architectural models for the development, validation, and verification of graphics processing unit design. Contribute to functional models for hardware/software (HW/SW) co-validation. Monitor and triage regression failures and debug failures to root cause. Handle and fulfill additional modeling related feature requests from neighboring teams. Review and scope product architecture teams’ specification documents, provide feedback for issues and mistakes. Support GPU hardware and software teams’ model usage during model and design bring-up. Maintain documentation for new properties and features added to functional models. Improve modeling infrastructure and tools. 40 hours/week.
Minimum Qualifications
- Bachelor’s degree or foreign equivalent in Mathematics, Computer Science or related field.
- Experience and/or education must include:
- Utilizing Object oriented programming languages like C++ and Python to work on large codebases
- Leveraging knowledge of GPU computing including CUDA programming for GPU level workloads
- Using advanced knowledge of computer systems and architecture to design and simulate hardware
- Using proficiency in algorithms and data structures for efficient computation and hardware model development
- Utilizing experience in debug of C, C++, and low level assembly for GPU models
- Leveraging experience in application performance analysis, tuning and developing debug tools for hardware models
- Utilizing knowledge of low-level hardware concepts (caches, pipelining, memory management, coherency) to analyze and improve hardware model fidelity
- Leveraging knowledge of software build systems using shell scripting and associated utilities to manage the build process to maintain and improve GPU model
Preferred Qualifications
- N/A