About Me
My Beautiful Mug

Research Focus

I am a PhD student studying computer architecture and operating systems for warehouse-scale computers (WSCs). I'm especially interested in the concept of resource disaggregation and serverless computing, where the individual components of traditional servers (CPU sockets, acclerators, memory, storage, etc.) are all directly accessible over the network (this is part of the FireBox Project). My work focuses on developing WSC-native programming models and the hardware needed to support those models. In particular, I am interested in integrating accelerators into the serverless programming paradigm.

Evaluating this research vision requires advances in programming models, hardware design, and simulation infrastructure, and so I also work on the FireSim datacenter-scale, cycle-exact, simulator (part of the chipyard agile SoC development framework). My work on FireSim and Chipyard mostly focuses on tools and methodologies for HW/SW co-design. In particular, I work on simplifying and automating the process of building, managing, and evaluating workloads across both functional and cycle-exact simulation with the FireMarshal tool.

Before Berkeley

For the two years before coming to Berkeley I worked at Oracle Labs. There I worked on a hardware/software co-design project focusing on analytic databases. Before that I was at UC Santa Cruz where I received my bachelor's degree in computer engineering with a focus on computer systems. I grew up in a small town near San Luis Obispo called Los Osos (about 4 hours south of Berkeley on the coast).


Serverless Computing

The Serverless Research Toolkit

Main Page

Serverless computing includes more than just function-as-a-service. Real serverless applications interact with a variety of cloud services. To aid in researching these systems, we have designed the Serverless Research Kit (SRK); a framework for abstracting common cloud services to facilitate research. SRK is a very early project but is already being used for serverless research within Berkeley.

Serverless GPUs

Initial Class Project Report

I am currently working on a project to include GPUs in the serveress ecosystem. In preliminary work, we demonstrated a simple kernel-as-a-service prototype (PyPlover) that allows users to upload a GPU-side function (called a "kernel" in CUDA) to the cloud and have it executed asynchronously on arbitrary hardware. I am currently expanding this work to support more realistic workloads with a data model and more flexible scheduling options. I am closely collaborating with the Cloudburst project on this work. In the future, I hope to investigate similar approaches for novel hardware accelerators like the NVDLA deep learning accelerator (using the Chipyard framework mentioned above).


Main Page

The FireBox project aims to develop a system architecture for third-generation Warehouse-Scale Computers (WSCs). The proposed Firebox architecture scales up to a ~1 MegaWatt WSC containing up to 10,000 compute nodes and up to an Exabyte (2^60 Bytes) of non-volatile memory connected via a low-latency, high-bandwidth optical switch. The FireBox project will produce custom datacenter SoCs, distributed simulation tools for warehouse-scale machines, and systems software for FireBox-style disaggregated datacenters.

Accelerating Page Faults for Remote Memory


In my masters research, I focused on the problem of exposing remote memory to operating systems as a virtual swap device. This approach is appealing because it is transparent to applications and reuses existing operating system infrastructure. Unfortunately, paging comes with significant software overheads, furthermore, each page fault synchronously interrupts the application. To get around these problems, I designed a modification to the traditional address translation hardware to automatically issue RDMA requests to remote memory without interrupting the operating system. Instead, the OS asynchronously processes paging events in the background without interrupting the application.


Main Page

FireSim is a cycle-exact, FPGA-accelerated scale-out computer system simulation platform. FireSim can simulate thousands of nodes, connected over a cycle-accurate network model, using real target-RTL. It leverages FPGAs in the cloud to provide elasic scaling of simulation ifrastructure, enabling large-scale simulation at a fraction of the cost of dedicated systems. My work on FireSim focuses on tools and methodologies for managing complex target software stacks in order to accelerate the HW/SW co-design process. My tools make the process of designing and evaluating software benchmarks on novel hardware more robust, interoperable, and most importantly, reproducible.


Centrifuge: Evaluating full-system HLS-generated heterogeneous-accelerator SoCs using FPGA-Acceleration (ICCAD '19)

Using FireSim to Enable Agile End-to-End RISC-V Computer Architecture Research (CARV '19)

The Serverless Data Center: Hardware Disaggregation Meets Serverless Computing (WORD '19)

Exploring the Disaggregated Memory Interface Design Space (WORD '19)

FireSim: FPGA-Accelerated Cycle-Exact Scale-Out System Simulation in the Public Cloud (ISCA '18)

Adaptive Resolution Histograms (Patent #14621204, 2015)

Other Interests

In addition to being a grad student, I'm also a person.

Fun Facts:

  • I have a finite Erdös-Bacon Number: 7
    • Erdös (4): Pemberton-Katz-Karp-Saks-Erdös
    • Bacon (3): Nathan Pemberton-(More Than Stars)-Susie Castillo-(Underdog)-Jed Griswold-(Patriots Day)-Kevin Bacon
    • Not to brag, but this is the same number as Natalie Portman and Noam Chompsky. I'm basically famous.
  • I make briar smoking pipes (and sometimes furniture) as a hobby
  • I love knitting and generally making stuff
  • I regularly volunteer with the Be A Scientist program in local Berkeley schools. If you're a grad student or postdoc, you should come ask me how you can get involved! It's a great program that exposes all Berkeley junior high students to graduate student mentors to work through a self-directed science project over a 6-week period. You can find more information here.
Contact Me

Nathan Pemberton

nathanp AT berkeley DOT edu

Desk: 585-3 Soda Hall (ADEPT Lab)