Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
167 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
42 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

funcX: A Federated Function Serving Fabric for Science (2005.04215v1)

Published 7 May 2020 in cs.DC

Abstract: Exploding data volumes and velocities, new computational methods and platforms, and ubiquitous connectivity demand new approaches to computation in the sciences. These new approaches must enable computation to be mobile, so that, for example, it can occur near data, be triggered by events (e.g., arrival of new data), be offloaded to specialized accelerators, or run remotely where resources are available. They also require new design approaches in which monolithic applications can be decomposed into smaller components, that may in turn be executed separately and on the most suitable resources. To address these needs we present funcX---a distributed function as a service (FaaS) platform that enables flexible, scalable, and high performance remote function execution. funcX's endpoint software can transform existing clouds, clusters, and supercomputers into function serving systems, while funcX's cloud-hosted service provides transparent, secure, and reliable function execution across a federated ecosystem of endpoints. We motivate the need for funcX with several scientific case studies, present our prototype design and implementation, show optimizations that deliver throughput in excess of 1 million functions per second, and demonstrate, via experiments on two supercomputers, that funcX can scale to more than more than 130000 concurrent workers.

Citations (170)

Summary

  • The paper introduces funcX, a distributed FaaS platform designed to adapt existing scientific infrastructures for federated function serving across diverse environments.
  • Experimental results demonstrate funcX achieves over one million function executions per second and scales to over 130,000 concurrent workers with competitive latency.
  • Applied in scientific domains via case studies, funcX facilitates computations across heterogeneous environments and advances the use of serverless computing in scientific research.

A Federated Function Serving Fabric for Science

This paper introduces "unc," a distributed Function as a Service (FaaS) platform tailored for scientific computation, addressing the escalating data volumes and complexities in the contemporary scientific landscape. The authors emphasize the necessity of computation mobility, allowing functions to be executed near data sources, triggered by events, offloaded to accelerators, or run on remote resources. They argue that existing non-FaaS scientific computing infrastructures impose challenges, such as batch scheduling interfaces and heterogeneity, which restrict sporadic function execution. unc aims to overcome these limitations by adapting the FaaS model to support distributed scientific workloads across diverse computational environments such as clusters, clouds, and supercomputers.

Key Contributions

The paper outlines several contributions of the unc platform:

  1. Distributed and Federated Execution: unc transforms existing infrastructures into FaaS systems, facilitating secure, scalable, and distributed function serving. It supports various container technologies and adapts to diverse proxies, such as batch schedulers.
  2. Performance Enhancements: Techniques like memoization, function warming, and prefetching boost performance. unc achieves throughput exceeding one million function executions per second and can scale to over 130,000 concurrent workers, offering competitive latency relative to commercial FaaS platforms.
  3. Practical Implementation: unc is applied in scientific domains through case studies, illustrating its utility in tasks like metadata extraction, machine learning inference, crystallography, neuroscience, spectroscopy, and physics data analysis.
  4. Discussion on FaaS in Research: The authors present a comparative analysis of existing FaaS platforms and discuss unc's unique positioning in scientific research, which includes facilitating computations across heterogeneous environments unavailable in commercial platforms.

Numerical Results

The authors present experimental results demonstrating unc’s performance compared to industry-leading FaaS platforms such as Amazon Lambda, Google Cloud Functions, and Azure Functions. The paper reports that unc achieves warmed function execution with latency comparable to commercial alternatives. With optimizations like batching, unc handles more than a million functions per second on a single machine, illustrating the scalability and throughput benefits to high-performance scientific workflows.

Implications and Future Directions

The research posits significant implications for both practical and theoretical aspects of computational science:

  • Practical Implications: By introducing unc, the authors provide a solution for executing scientific computations with reduced overheads and increased throughput. unc facilitates event-driven computing and improves the ease with which scientists can leverage high-performance distributed infrastructures.
  • Theoretical Implications: unc’s design prompts further exploration into optimizing federated FaaS models, introducing potential improvements in scheduling, data management across cloud-edge architectures, and utilizing accelerators more effectively.

Exploration beyond current limitations includes developing resource-aware scheduling mechanisms and enhancing container management capabilities to dynamically stage containers as needed. Further work would focus on improving adaptability to resource heterogeneity and refining data management to streamline large-scale scientific applications further.

Conclusion

This paper provides a robust case for unc as a foundational platform adapting scientific computing processes to the FaaS paradigm. Through strategic adaptions to the existing models, unc not only facilitates seamless function execution but also sets the stage for future innovations in scalable, distributed scientific computing. This contributes meaningfully to the discourse on the role of serverless computing in scientific research, paving the way for a wider acceptance and evolution of such architectures in computational sciences.