Graalvisor: Virtualized Polyglot Runtime for Serverless Applications

12/20/2022
by   Rodrigo Bruno, et al.
0

Serverless is a new attractive computing model that offers great scalability and elasticity, taking the infrastructure management burden away from users, and enabling a pay-as-you-use billing model. As a result, Serverless is becoming increasingly popular, and new use cases have recently been proposed. Examples include video and image processing, Machine Learning inference and training, and data analytics. However, Serverless is currently supported by bloated virtualization stacks composed of a combination of virtual machines and/or containers, and language runtimes. None of these were to host lightweight and fast-executing Serverless workloads. To reduce the virtualization stack bloat, we propose Graalvisor, a virtualized polyglot language runtime capable of running multiple concurrent functions with minimal overhead. Graalvisor is designed to efficiently run lightweight and short-running Serverless functions, each running in a tiny execution environment that launches under 500 us. A single Graalvisor instance can run thousands of functions written in many different languages. By virtualizing a single runtime across many function invocations, Graalvisor reduces virtualization stack redundancy, resulting in lower memory consumption and less cold-starts. On a set of established Serverless functions, Graalvisor improves the throughput per memory (ops/sec/GB) on average by 170× for Java functions, 26.6× for JavaScript functions, and 2.07× for Python functions. When reproducing a public Serverless trace, Graalvisor reduces the overall memory footprint by 83 percentile) by 68

READ FULL TEXT
research
08/04/2022

CheckSync: Using Runtime-Integrated Checkpoints to Achieve High Availability

CheckSync provides applications with high availability via runtime-integ...
research
02/21/2020

Faasm: Lightweight Isolation for Efficient Stateful Serverless Computing

Serverless computing is an excellent fit for big data processing because...
research
09/22/2021

Intel Optane DCPMM and Serverless Computing

This report describes 1) how we use Intel's Optane DCPMM in the memory M...
research
03/01/2022

Tiny Autoscalers for Tiny Workloads: Dynamic CPU Allocation for Serverless Functions

In serverless computing, applications are executed under lightweight vir...
research
04/05/2023

Efficient and Accurate Automatic Python Bindings with cppyy Cling

The simplicity of Python and the power of C++ force stark choices on a s...
research
08/18/2015

Cold Object Identification in the Java Virtual Machine

Many Java applications instantiate objects within the Java heap that are...
research
05/13/2022

Virtual Disk Snapshot Management at Scale

Contrary to the other resources such as CPU, memory, and network, for wh...

Please sign up or login with your details

Forgot password? Click here to reset