Deep Learning Compiler Engineer
Do you have a strong passion for optimizing cutting-edge deep learning, HPC, datacenter, and client SW for maximum performance on the latest HW? We are looking for individuals who are interested in building the world's leading deep learning compiler for current and future Intel datacenter/client CPUs and GPUs.
This is a product development position with the end goal being high-quality, high-performance, secure product SW that makes the latest cutting-edge HW shine. You will start optimization pre-silicon and have access to HW shortly after it is first powered on. Product innovation and publication is encouraged and there are some opportunities to collaborate with research partners to develop ideas and translate them into the product.
The Artificial Intelligent and Analytics (AIA) division is at the leading edge of the AI revolution at Intel, covering the full stack from applied ML to ML / DL and data analytics frameworks, to Intel oneAPI AI libraries, and CPU/GPU HW/SW co-design for AI acceleration. It is an organization with a strong technical atmosphere, innovation, friendly team-work spirit, and engineers with diverse backgrounds.
The Deep Learning Frameworks and Libraries (DLFL) department is responsible for optimizing leading DL frameworks on Intel platforms. We also develop the popular oneAPI Deep Neural Network Library (oneDNN), and oneDNN Graph library.
Our goal is to lead in Deep Learning performance for both the CPU and GPU. We work closely with other Intel business units and industrial partners.
You will conduct software development and optimizations in the following areas:
- Develop MLIR based compiler technology for Deep Learning workloads on Intel CPUs and GPUs.
- Develop large-scale production software with validation and continuous integration in mind.
- Collaborate with Frameworks and Math library teams to develop compiler optimizations for Deep Learning domain.
- Collaborate with open-source projects, upstream changes, coordinate internally and externally with cross geographical teams.
An ideal candidate would exhibit behavioral traits that indicate
- Ability to work in a dynamic and team-oriented environment
- Ability to work closely with teammates at multiple US sites as well as with closely related teams in other countries working virtually together on the same product
- Positive can-do attitude, desire to deliver results and winning products
- Excellent written and oral communication skills
- You should have a passion for optimization and performance at the low level, close the HW, as well as for good SW engineering practice and usability.
You must possess the below minimum qualifications to be initially considered for this position. Preferred qualifications are in addition to the minimum requirements and are considered a plus factor in identifying top candidates.
Experience listed below would be obtained through a combination of your school work/ classes/ research and/or relevant previous job and/or internship experiences.
Bachelor's Degree with 4+ years or Master's degree with 3+ years of relevant industry experience.
Degree must be in Computer Science, Computer Engineering, Wireless, Electrical engineering or a STEM discipline.
3+ years of experience with the following skills:
Compiler development and/ or optimizations.
Ability to write flawless, readable and maintainable code in C++
Solid experience in developing large code base, production software in-house and/or open-source community
Solid computer architecture knowledge including vector, multicore and memory hierarchy
Deep performance analysis skills
Performance on Intel CPU, GPU
Applications involving linear algebra such as matrix multiply
HPC applications and distributed computing
Understanding of Deep Learning algorithms
Deep Learning frameworks
Developing or optimizing Deep Learning models, especially low precision models
ML Performance benchmarks
Exposure to high-performance math libraries