Jake Davies

PhD student at EPCC, The University of Edinburgh. Researching compilers for novel architectures.


My research focus is on compiler support for novel computer architectures which differ drastically from the classic CPUs and GPUs. These architectures have potential for improving the performance of workloads beyond their intended use case, generally machine learning, and vendors generally provide a bespoke programming API, whether a framework, library, or custom language. However, the API is usually tied to the architecture requiring programmers to deeply understand the architecture before they can begin designing performant code.


My work aims to resolve this issue, through using MLIR compilers to bring existing and well-known HPC programming models to these architectures so that programmers aren't forced to learn each programming model for each accelerator they wish to try out, and can just run their existing codes with few edits. The hypothesis is this work is that this can be done in a performant and largely sharable way across accelerators. So far, I have a compiler that supports running OpenMP offload/OpenACC loops onto the Tenstorrent accelerators, with source in either C/C++ or Fortran.


Some recent projects include:


Always happy to talk, feel free to reach out!