UBC research team develops framework to save costs for serverless computing
About The University of British Columbia
Since 1915, The University of British Columbia has been a global center for research, teaching, and learning. Ranked among the top twenty public universities in the world, it attracts an international population of over 70K undergraduate and graduate students to its Vancouver and Okanagan campuses.
Tell us your challenge. We're here to help.
Contact usGoogle Research Innovator improves efficiency of cloud computing with Google Cloud Functions and Pub/Sub.
Google Cloud results
- Up to 89.8% cost savings, depending on various scenarios
- Extra credits, resources, and network through Research Innovator program
- Ease of use for developers and researchers using serverless computing
Using UnFaaSener to migrate workloads to idle computing resources results in up to 89.8% cost savings
Managing research with new tools can be daunting
The widespread adoption of serverless computing has led to a paradigm shift for the research community. By eliminating the burdens of server maintenance and paying only for the resources they use, developers can work more flexibly and cut down costs. To make serverless computing more efficient, Mohammad Shahrad and a team at The University of British Columbia (UBC) have designed UnFaaSener, an open-source framework built on Google Cloud that can dynamically offload cloud functions to a range of alternative hosts, such as virtual machines, on-premise servers, or personal computers.
A dynamic solution to optimize resources and lower costs
As an Assistant Professor in UBC's department of Electrical and Computer Engineering, Shahrad specializes in finding ways to improve the efficiency of cloud computing systems. To develop UnFaaSener he and his colleagues faced significant challenges: "we wanted the application to work for any variable, regardless of host, workflow, or capacity," Shahrad explains. "UnFaaSener does this by dynamically considering the latency and cost implications of offloading, then predicting resource availability on hosts against the quality of service requirements communicated by the developer."
"Having already used Google Cloud Functions, we found it well-documented and easy to use. Pub/Sub lets us easily migrate functions from host to host. They also integrate together seamlessly."
—Mohammad Shahrad, Assistant Professor of Electrical and Computer Engineering, The University of British ColumbiaThe team built the framework using Google Cloud Functions and Pub/Sub. "Having already used Google Cloud Functions," Shahrad says, "we found it well-documented and easy to use. Pub/Sub lets us easily migrate functions from host to host. They also integrate together seamlessly."
This pilot, presented at USENIX's Annual Technical Conference in July 2023, demonstrated that UnFaaSener can monitor the available resources of any host within or outside the cloud that is running serverless functions, and find idle capacity to run those functions. Then, it can transparently move workloads to unused Virtual Machines (VMs) to lower costs. In their paper, led by graduate research assistant Ghazal Sadeghian, Shahrad's team showed that using UnFaaSener resulted in up to 89.8% cost savings for cloud workflows.
An expanded network of colleagues to accelerate research
Shahrad was already well acquainted with Google Cloud tools and spent 2022 as one of 62 Google Cloud Research Innovators. As part of a cohort spanning fields from STEM to social sciences, he met with colleagues from around the world, as well as Google experts, over the course of the year. In addition to mentoring and collaboration, the program also provides participants with additional technical support, speaking opportunities, and Google Research credits to accelerate their projects. "Having access to additional Google Cloud Credits for a longer period allowed us to build our open-source tools and infrastructure on top of Google Cloud Functions without worry," Shahrad says. "And I do research on cloud systems so it was especially valuable to have conversations with Google's teams as they developed new products."
UnFaaSener is already open-sourced on GitHub, and the team will continue to improve and expand it. Shahrad plans to optimize it to run faster and add offloading to multiple hosts simultaneously. Right now, he says, it works best on Google Cloud, but the team is also adding other cloud hosts to make it truly platform-agnostic. He is optimistic that it will help developers better leverage the benefits of serverless computing: "UnFaaSener is lightweight and dynamic. It's responsive to costs, capacity, and locations. It lays a foundation for researchers and developers to explore the potential of offloading serverless functions for various purposes."
To learn more about the current Google Cloud Research Innovators' cohort, click here. To explore funding opportunities, check out the eligibility for cloud training and academic research credits. To find out how you can get started with generative AI for higher education, download the new 10-step public sector guide. With domain-specific use cases and customer stories from the city of Memphis, the state of Minnesota, the U.S. Department of Defense, and more, it offers a comprehensive guide to kickstart your gen AI journey.
Tell us your challenge. We're here to help.
Contact usAbout The University of British Columbia
Since 1915, The University of British Columbia has been a global center for research, teaching, and learning. Ranked among the top twenty public universities in the world, it attracts an international population of over 70K undergraduate and graduate students to its Vancouver and Okanagan campuses.