Software Engineer II: AI Compiler Engineer
Cadence · Austin, TX · 6 days ago
EngineeringFull-time
Job Description
As a Software Engineer II: AI Compiler Engineer at Cadence Design Systems Inc., you will work with complex high performance System-on-Chips (SoCs), and be part of a team that develops an AI graph compiler. This compiler takes input from frameworks like PyTorch or TensorFlow and converts them into optimized code suitable for execution on special-purpose and embedded platforms.
- Developing a deep learning compiler stack that takes neural network descriptions (CNNs/RNNs) created in frameworks such as Caffe, PyTorch, TensorFlow, etc. and converts them into code suitable for execution on special-purpose and embedded platforms.
- Using modern compiler frameworks such as LLVM and MLIR.
- Developing optimized implementations of a variety of neural-network operations and integrating them into a runtime framework.
- Developing new optimization techniques and algorithms to efficiently map CNNs onto a wide range of Xtensa processors and specialized hardware.
- Benchmarking end-to-end network performance on a variety of DSP and special-purpose accelerator platforms.
- Enhancing the framework to improve overall functionality and performance on the various hardware platforms.
- Developing complex programs to validate the functionality and performance of the CNN application programming kit.
- Working with hardware designers to identify opportunities for additional hardware acceleration of neural network functions.
- Working with industry-leading partners and customers to design and standardize neural network APIs.
Requirements
- Complete Bachelor in Computer Science or Computer Engineering or equivalent experience.
- A high level of C and C++ programming expertise with 3-5+ years of experience is required.
- Expertise in software development on Linux and Windows systems including test, debug and release is required.
- Knowledge of and experience with a state-of-the-art compiler stack such as LLVM and MLIR.
- Experience implementing compilation techniques such loop optimization, polyhedral models, and IR construction/transition/lowering techniques.
Nice to Have
- Master or PhD.
- 3+ years of experience working on a production compiler is highly desired.
- Prior work with CNNs and familiarity with deep learning frameworks (TensorFlow, Caffe/2, etc.) is a strong plus.
- Experience programming and optimizing for embedded platforms such as DSPs with DMA engines highly desired.
- Familiarity with the state-of-the-art deep learning compilation approaches (Glow, TVM, XLA, etc.) is a plus.
- Familiarity with various deep learning networks and their applications (Classification/Segmentation/Object Detection/RNNs) is a plus.
- Knowledge of neural net exchange formats (ONNX, NNEF) is a plus.
Additional Job Details
- Employment term: 40 hours/week.
- Hybrid work.
- Competitive benefits.