Karima Ma

Computer Science PhD at Massachusetts Institute of Technology


Hi! I’m currently a PhD student in my last year at MIT advised by Jonathan Ragan-Kelley. Before joining MIT I received a masters in Computer Science at Carnegie Mellon and a B.A. in Economics at Dartmouth College. I’ve interned at FAIR and Adobe Research during my PhD and had the pleasure of collaborating with and learning from many people including Andrew Adams, Fredo Durand, Michaël Gharbi, Shoaib Kamil, and Tzu-Mao Li.

Research Interests

My goal is to create program synthesis environments that give users flexible control over design and implementation, from the novice who wants full automation, to the expert who wants surgical synthesis, preserving low-level control over sensitive sub-tasks. My work connects methods from domain-specific programming, high performance computing, program synthesis, and machine learning to build systems for automatic program generation.

In the past I’ve worked on finding fast approximations for large image and audio filters and program synthesis for demosaicking, where the user wants to maximize both program throughput and output quality. These competing objectives often exist in spaces where there are intractably many valid program mutations with non-obvious and entangled effects to consider, making it impossible to adequately explore program designs without automated search tools.

I’ve also considered cases where there is only one objective, like maximizing throughput, in the context of automatically generating schedules for Halide programs. Even here, the space of optimization decisions is highly complex and difficult to navigate. Before our autoscheduler, only experts could find good schedules within a reasonable amount of time, relying on heuristics acquired through years of experience.

I’m currently investigating linting as a dialogue system between programmer and compiler for performance optimization in user-schedulable languages. The main goals of which are: transparent workflow augmentation for the expert and domain knowledge transfer for the novice.

Mentoring

Matt Caren (MIT Undergrad)