Akash Banerjee

Akash Banerjee

Compiler Engineer at AMD

Download CV

About Me

I am a compiler engineer at AMD, UK, currently part of the HPC compiler team for the Frontier supercomputing project. I work on the new llvm‑flang driver for Fortran and on device code offloading support for the OpenMP dialect in MLIR.

My interests lie in compilers, program analysis, formal verification, and SAT solvers. I attained my master’s in Computer Science & Engineering at IIT Hyderabad under Prof. Saurabh Joshi in the field of software verification, and worked with Prof. Ramakrishna Upadrasta on improving compiler optimizations.

When I’m not coding, you can find me losing at DOTA 2, staring at my fish tanks, or giving pats to Simba (OTRB). I’m also learning photography 🙂

Skills

Programming

  • Proficient in C and C++
  • Experience with Java, Rust, Python, JavaScript and C#

Frameworks & Tools

  • Deep knowledge of MLIR & LLVM compiler infrastructure
  • Experienced with the CPROVER verification framework
  • Git, GDB, LLDB, Eclipse, LaTeX

Systems

  • Linux system administration
  • CI/CD build bots deployment & maintenance
  • Regression testing

Design Tools

  • Blender, ZBrush
  • Unity, Photoshop

Projects

AMDGPU Complex Math Enablement (Flang/ROCDL)

Jul 2025

Enabled complex math on AMDGPU with new complex operations and ROCDL lowerings, and stabilized the path with follow‑up fixes.

Learn more

OpenMP AUTOMAP Inference (Flang/MLIR)

Jul 2025

Added AUTOMAP support so the compiler can infer map clauses and reduce boilerplate; includes conversion to explicit target‑data mappings and cross‑platform stabilization.

Learn more

OpenMP User‑Defined Mappers (MLIR/LLVM/Flang)

Nov 2023

Upstreamed end‑to‑end support for user‑defined mappers, standardized default‑mapper discovery, and strengthened semantics for arrays and derived types to ensure correct device mapping.

Learn more

OpenMP Offload Codegen Unification (OpenMPIRBuilder/MLIR)

Jun 2023

Centralized OpenMP target‑data and parallel codegen in OpenMPIRBuilder and modernized the MLIR dialect to reduce duplication and enable reliable transformations.

Learn more

Proteus: Polymorphic Compilation

Jun 2021

Developed a compiler tool using polymorphic compilation and execution techniques to mitigate a class of side‑channel attacks with minimal performance overhead. Part of my master's thesis project.

BPI Enhancements

Apr 2020

Proposed and implemented improvements to the Branch Probability Information pass in LLVM to allow better static profiling. The enhancements led to speed‑ups of up to 1.07× and were accepted as a poster at EuroLLVM 2020.

Source Poster

Loop Acceleration

Oct 2019

Added a loop acceleration module to the Pinaka verifier for quick detection of counterexamples in loops simulating polynomial functions. Pinaka won the third‑fastest verifier position in SV‑COMP’20 Floats sub‑category.

Source

LLVM2GOTO

Sep 2019

Created a tool to translate LLVM IR to CBMC‑GOTO. This allows verification of programs that have LLVM front‑ends by translating their IR into GOTO IR and verifying them with CBMC.

Source

COOL Compiler

Aug 2019

Designed and implemented a compiler for the COOL language to generate LLVM IR as part of the Advanced Compiler Design course project.

SAT Solvers

Mar 2019

Implemented DPLL, CDCL, and MaxSAT solvers with various heuristics and techniques such as MOMS, lazy data structures, and watch literals as part of the Constraint Programming course project.

Source

Hybrid Mutual Exclusion

Nov 2018

Implemented a hybrid mutual exclusion algorithm for distributed systems by combining Raymond’s and Maekawa’s algorithms, multiplexing between them based on load, latency, and throughput.

Source

Thin Slicing in GOTO

Nov 2018

Implemented thin‑slicing in CBMC‑GOTO to aid debugging of large programs by presenting only relevant sections of code, improving focus and efficiency.

Bitcoin Wallet

Oct 2018

Developed a Bitcoin wallet application capable of creating and managing BTC addresses with support for single and multisig authorization. Completed for the Blockchain Theory & Practice course.

Source

Get in touch

Address

Regus – Midsummer Court
Milton Keynes MK9 2UB
England, United Kingdom