Hello! I am a research scientist at Adobe, where I specialize in programming systems research.

My work focuses on harnessing the advances in program synthesis and machine learning to develop tools that enable programmers to write high-level programs that function as well or better than manually crafted low-level programs created by experts.

I received my Ph.D. in June 2022 from the University of Washington where I worked with Alvin Cheung as part of the Programming Languages & Software Engineering group. I received my B.S. in Computer Science in June 2014 from the National University of Computer & Emerging Sciences and was awarded the University Silver Medal for highest standing in the graduating class. When not doing research, I spend my days chossineering in the Cascades or cooking food for my friends.

I am always excited to work with interns. If you are interested in an internship at Adobe Research (Summer 2024), send me an email.


ReparamCAD active

ReparamCAD is a tool for automatically reparameterizing 3D CAD models to facilitate seamless design exploration. ReparamCAD employs a neurosymbolic approach, leveraging foundational language and diffusion models to generate compelling and valid variations of the input model, and symbolic analysis to discover geometric constraints that hold across the shape class.


Pitchfork inactive

Pitchfork is an instruction selection system for high-performance fixed-point computing, centered around a new fixed-point IR (FPIR). Pitchfork uses a set of term-rewriting systems to lift the input code to FPIR before lowering it to target fixed-point instructions. Offline synthesis is used to infer new rules that enable cheap semantic reasoning at compile time.


Rake inactive

Rake is a new tool that uses program-synthesis to transform lower-level DSL IRs to complex high-level instruction sets found in modern hardware, such as the Hexagon HVX ISA.

Publication · ASPLOS '22 Talk · GitHub

Dexter inactive

Dexter is a new tool to automatically translate image processing functions from a low-level language to a high-level domain-specific language (DSL), allowing such functions to leverage the cross-platform optimizations enabled by DSLs. This project is an outcome of my internship at Adobe and is done in collaboration with Shoaib Kamil and Jonathan Ragan-Kelley.

Publication · SIGGRAPH ASIA '19 Teaser · Slides · GitHub · Website

Casper inactive

Casper is a compiler that uses Verified Lifting (a combination of synthesis and verification) to automatically retarget sequential Java code to MapReduce frameworks such as Apache Spark.

Publication · SIGMOD '18 Talk · Slides · GitHub · Demo · Website

GraSSP inactive

A novel approach for automatic parallelization of single-pass array-processing programs with possible data-dependencies. This project is lead by Grigory Fedyukovich.

Publication · PLDI '17 Talk · Website


Fast Instruction Selection for Fast Digital Signal Processing
Alexander J. Root, Maaz Bin Safeer Ahmad, Andrew Adams, Dillon Sharlet, Shoaib Kamil and Jonathan Ragan-Kelley
ASPLOS 2024 (To Appear)

Vector Instruction Selection for Digital Signal Processors using Program Synthesis
Maaz Bin Safeer Ahmad, Alexander J. Root, Andrew Adams, Shoaib Kamil and Alvin Cheung
ASPLOS 2022 · BibTex · DOI · Talk

Automatically Translating Image Processing Libraries to Halide
Maaz Bin Safeer Ahmad, Jonathan Ragan-Kelley, Alvin Cheung and Shoaib Kamil
SIGGRAPH ASIA 2019 · BibTex · DOI · Slides

Optimizing Data-Intensive Applications Automatically By Leveraging Parallel Data Processing Frameworks
Maaz Bin Safeer Ahmad and Alvin Cheung
SIGMOD 2017 Demo · BibTex · DOI · Honorable Mention for Best Demo Award

Gradual Synthesis for Static Parallelization of Single-Pass Array-Processing Programs
Grigory Fedyukovich, Maaz Bin Safeer Ahmad and Rastislav Bodik
PLDI 2017 · BibTex · DOI · Talk

Leveraging Parallel Data Processing Frameworks with Verified Lifting
Maaz Bin Safeer Ahmad and Alvin Cheung
SYNT 2016 · BibTex · DOI · Best Student Paper

Characterizing dengue spread and severity using internet media sources
Talal Ahmad, Nabeel Abdur Rehman, Fahad Pervaiz, Shankar Kalyanaraman, Maaz Bin Safeer Ahmad, Sunandan Chakraborty, Umar Saif and Lakshminarayanan Subramanian
ACM DEV 2013 · BibTex · DOI