Skip to Main Content
Talk Beginner

From C to Optimised Machine Code- A System Engineer's journey through LLVM and MLIR

Proposal status is Rejected
Session Description

Many software engineers write C or C++ every day, but very few understand what happens between compiling their code and running it on the processor. Compiler infrastructures like LLVM and MLIR play a major role in modern software development, powering everything from traditional compilers to AI frameworks and high-performance computing.

In this session, I'll take a practical, hands-on approach to understanding this compilation pipeline. Starting with a simple C program, we'll follow its journey through LLVM Intermediate Representation (IR), explore how compiler optimizations transform the code, and see how MLIR enables higher-level optimizations for modern workloads such as machine learning.

The session will include live demonstrations of generating LLVM IR, inspecting optimization passes, and building a small custom transformation. I'll also show where MLIR fits into the picture and why it has become an important building block for AI and HPC compilers.

Rather than focusing on compiler theory, this talk aims to give systems engineers and application developers an intuitive understanding of the tools that compile and optimize the software they write every day.

Key Takeaways

- Understand what happens between writing C/C++ code and executing machine code.

- Learn the purpose of LLVM IR and why it is central to modern compiler infrastructure.

- See how compiler optimizations transform code through practical examples.

- Understand why MLIR was introduced and how it complements LLVM.

- Learn how AI and HPC frameworks use LLVM and MLIR behind the scenes.

- Leave with enough practical knowledge to start experimenting with LLVM and MLIR on your own.

References

Which track are you applying for?

Compilers, Programming Languages and Systems

Speakers

Partha Sarthy
Partha Sarthy Software Engineer Expert | Applied Materials

I'm a software engineer with over eight years of experience in systems software and networking. I've worked at HPE, Juniper Networks, Cisco and Applied Materials, building software for networking and high-performance computing environments. My interests lie at the intersection of distributed systems, AI infrastructure, high-performance computing, and compiler technologies.

I enjoy building practical systems that solve real engineering problems and learning by implementing new technologies from the ground up. Recently, I've been been exploring the Model Context Protocol (MCP) to build AI-enabled applications, and I'm excited to share the engineering lessons I learned along the way.