Neural Nets Compiler Engineer (Tensilica IPG ML/AI team):
- Get in on the ground floor of new efforts to develop programming models for Artificial Intelligence and Machine Learning algorithms. The Tensilica IPG group of Cadence develops specialized processors capable of delivering orders of magnitude better efficiency for convolutional and recurrent neural networks used in computer vision, communication and audio applications.
- You will be a part of the effort to provide state of the inference at the edge solutions for Tensilica IPG and a member of a team building the next generation of the Xtensa Neural Network Compiler (XNNC) shipped alongside our core AI technology.
Your responsibilities will include:
- Develop a deep learning compiler stack that interfaces frameworks such as Tensorflow, Caffe2/PyTorch, etc. and converts neural nets (CNN/RNN) into internal representations suitable for optimizations.
- Develop new optimization techniques and algorithms to efficiently map CNNs onto a wide range of Tensilica Xtensa processors and specialized HW
- Implement state of the art code generation (source-to-source as well as binary)
- Develop supporting data compression techniques, quantization algorithms, tensor sparsity enhancements, network pruning, etc
- Devise multiprocessor/multicore partitioning and scheduling strategies
- Develop complex programs to validate the functionality and performance of the CNN application programming kit
- Help in authoring and reviewing product documentation
- Assist the Tensilica application engineering team support customers of the product (some amount of direct customer interaction may be required).
Required and desired qualifications:
- 3-5+ years of experience working on a production compiler.
- Advanced compiler construction, target-independent optimizations and analyses, code generation fundamentals is a must.
- Expertise in software development, test, debug and release required.
- Great C++ is a must, Python mandatory, but less pressing.
- Knowledge of and experience with LLVM compiler stack is very desirable (other state-of-the-art compilers qualify too).
- High to intermediate optimization space: loop optimization, polyhedral models, IR construction/transition/lowering techniques is a big plus.
- Prior work with CNNs and familiarity with deep learning frameworks (Tensorflow, Caffe/2, etc.) is a strong plus.
- Familiarity with the state-of-the-art deep learning compilation approaches is a huge plus: XLA, Glow, NNVM, TVM, Tensor Comprehensions, etc.
- 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 bonus.
You will find more info about the company in the description.