Microarchitecture Design for Serverless Systems

ECE PRE FPO PRESENTATION
Date
Dec 17, 2024, 3:30 pm4:30 pm
Location
EQUAD E219 & Zoom Mtg (See abstract)

Speaker

Details

Event Description

Serverless computing is an emerging cloud computing paradigm that simplifies application development and deployment by allowing developers to focus solely on writing function instances. Resource allocation and provisioning are fully managed by the cloud provider, offering scalability and pay-as-you-go pricing models. Serverless functions are often short-lived and interleaved with other functions on the same server node to maximize server utilization. However, these characteristics pose challenges to traditional architectural designs, such as caches, which rely on exploiting applications' temporal and spatial locality. Additionally, serverless systems employ complex middleware and incur significant Operating System (OS) overhead. How to preserve microarchitectural locality in such OS-heavy frameworks with interleaving functions remains a critical challenge for computer architects. To enable comprehensive studies of these challenges, first we develop MindPalace, a full-system simulator framework to study the architectural behavior of large middleware frameworks, by leveraging QEMU and ChampSim. Full-system architectural studies of the cache hierarchy, branch predictor, and other microarchitectural components can be conducted by MindPalace while accounting for the FaaS middleware. Then, we present a novel streaming prefetching technique designed to mitigate inefficiencies in branch outcome prediction for serverless functions. This approach records branch prediction metadata during function preprocessing, and prefetching it into the predictor during executions, which can significantly improve the accuracy of predictions.

Adviser: David Wentzlaff

Zoom Mtg: https://princeton.zoom.us/j/98951045868