profile picture

Dietrich G

- Research Program Mentor

PhD candidate at Cornell University

Expertise

Computer Science, Programming Language Design, CPU-GPU Programming/Graphics, Game Development, Algorithms/DSA, HPC (High performance computing)

Bio

I'm an nth-year PhD student at Cornell University interested in exploring programming language design and implementation. I'm specifically interested in how to better represent heterogeneous (specifically CPU-GPU) interactions so that humans can understand these interactions. I would also like to identify mechanisms to optimize heterogeneous dataflow. My research interests are fairly broad, however, spanning everything from formal logic and verification to numeric computing and graphics. Personally, I enjoy drawing, gaming, and rock climbing. I've been board gaming for years, including (poorly) competitive chess, and have a large collection of games in my cabinet. I have also recently been exploring creative writing to improve my writing skills and express ideas.

Project ideas

Project ideas are meant to help inspire student thinking about their own project. Students are in the driver seat of their research and are free to use any or none of the ideas shared by their mentors.

Language for Logic-based AI Expression

The goal of this project is to develop a programming language explicitly for expressing artificial intelligence over logical search problems. The student would learn about core AI and language design before applying it to construct a language backed by a logic solver.

Scaling Optimizations Based on Approximations

The goal of this project is to explore how to better optimize compilers while sacrificing some precision, but on a sliding scale. Specifically, students would learn about compiler optimizations and how to develop approximate optimizations before expanding on this idea for a user-defined precision metric.

Type System for Units of Measure

The goal of this project would be to explore a type system for units of measure (e.g. meters vs feet) in a beginner-friendly setting. The student would learn about formal type semantics before applying these ideas to expressing this problem in conjunction with prior research on the topic.

Coding skills

Python, Rust, OCaml, C++, C, C#, Java, Haskell, Racket, Verilog, JS/TS, Prolog

Languages I know

French, conversational

Teaching experience

I taught intro to python two semesters at Cornell. I am going on the job market as a teaching professor this year. I have mentored students in programming and on CS projects for years. This has included everything from basic programming to working out research projects for high school and undergraduate researchers. I have mentored somewhere between 30 and 40 students over the years on a number of projects that are difficult to enumerate. I have also worked as a TA for a couple of semesters and intend to teach an intro programming course this summer.

Credentials

Work experience

Facebook (2021 - 2021)
Research Intern
NVIDIA (2020 - 2020)
Research Intern

Education

University of Utah
BS Bachelor of Science (2017)
Computer Science, Mathematics, Physical Chemistry
Cornell University
MS Master of Science (2020)
Computer Science
Cornell University
PhD Doctor of Philosophy candidate
Computer Science

Interested in working with expert mentors like Dietrich?

Apply now