Senior Software Engineer

Cadence · Austin, TX

Company

Cadence

Location

Austin, TX

Type

Full Time

Job Description

At Cadence, we hire and develop leaders and innovators who want to make an impact on the world of technology.

  • As an Software Engineer II: AI Compiler Engineer you will work with the IP/SSD Team used with complex high performance SoC's, and is one of the best kept secrets within the semi IP world powering AR/VR, HiFi Audio and Speech, Vision, Imaging and hundreds of intelligent IoT applications.

    Be a part of a team that develops an AI graph compiler that takes as input Neural Networks (NNs) created in frameworks such as PyTorch or TensorFlow and converts them into optimized code suitable for execution on special-purpose and embedded platforms.

    You will work with next generation processor embedded core that will meet the edge computing demands of AI applications. Come be part of the next explosion of embedded devices building a key part of our processor generating platform for CPU's and DSP's.

Want more jobs like this?

Get jobs in Austin, TX delivered to your inbox every week.

By signing up, you agree to our Terms of Service & Privacy Policy.


Cadence has been nominated as a Great Place to Work globally and in Brazil and is also a Fortune 100 Best Companies to Work For.

Job Description:
  • 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.
  • Use 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.
  • Devising multiprocessor/multicore partitioning and scheduling strategies.
  • 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..

  • Nice to have:

    Master or PhD. 3+ years of experience working on a production compiler is highly desired. Python experience 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

    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.

    We're doing work that matters. Help us solve what others can't.

    Apply Now

    Date Posted

    01/23/2025

    Views

    0

    Back to Job Listings Add To Job List Company Profile View Company Reviews
    Neutral
    Subjectivity Score: 0