Senior DPU Compiler Engineer, LLVM



Multiple locations
Posted on Wednesday, October 18, 2023

We are looking to hire a Compiler Engineer for an exciting and fun role at NVIDIA. We craft outstanding compilers that realize the potential of NVIDIA's DPUs designed for the world's largest Generative AI Data Centers: We need you to design, develop and tune optimizing compilers based on Clang/LLVM for our latest Data Processing Unit (DPU) accelerators. These compilers are key for the performance of Generative AI, HPC and other performance critical software deployed on NVIDIA Data Centres, on the cloud and at super computing centres around the world.

In this role you will solve critical problems working alongside an outstanding engineering team with vision in Compiler technology and systems software, doing what you enjoy! Our compiler organisation makes its mark on every CPU, GPU, DPU and SoC product that NVIDIA builds. Would you like to be part of this outstanding organisation?

What you will be doing:

  • Partner with a geographically distributed organization spanning Networking SW, HW, Customers to define, design and optimize DPU Compiler SW at NVIDIA.

  • Invent and improve middle-end and back-end compiler optimizations in Clang/LLVM targeting NVIDIA DPU

  • Implement complex back-end passes (register allocation, scheduling and others) for high performance custom processors that meet hard real time performance requirements

  • Drive new compiler features that improve programmability of NVIDIA DPUs and contribute to definition of DPU programming model.

  • Participate in complete HW / SW co-design cycle from pre-silicon to launch to customer support.

  • Be part of a team that is at the centre of AI, HPC and data centre technologies.

What we need to see:

  • BS or MS degree in Computer Science, Computer Engineering, or related field with 8+ years of experience.

  • Experience in compiler development with focus on middle-end or back-end optimizations for LLVM

  • Experience working with compiler backends for custom designed processors

  • Knowledge of embedded toolchains.

  • Strong hands-on C++ programming skills.

  • Excellent verbal and written communications skills.

Ways to stand out from the crowd:

  • Familiarity with CPU architectures such as Arm Architecture (AArch32, AArch64), RISC-V, x86_64, PowerPC or DSPs and engaging with pre-silicon compiler and toolchain contributions.

  • A track record of working with industry standard compiler infrastructure such as Clang, LLVM or MLIR.

  • Experience with Domain Specific Languages (DSL) compilers.

With highly competitive salaries and a comprehensive benefits package, NVIDIA is widely considered to be one of the technology world’s most desirable employers. We have some of the most innovative and talented people on the planet working for us and, due to unprecedented growth, our world-class engineering teams are expanding fast. If you're a creative and autonomous engineer with a genuine passion for technology, we want to hear from you.