143 research outputs found
Carbon Containers: A System-level Facility for Managing Application-level Carbon Emissions
To reduce their environmental impact, cloud datacenters' are increasingly
focused on optimizing applications' carbon-efficiency, or work done per mass of
carbon emitted. To facilitate such optimizations, we present Carbon Containers,
a simple system-level facility, which extends prior work on power containers,
that automatically regulates applications' carbon emissions in response to
variations in both their workload's intensity and their energy's
carbon-intensity. Specifically, \carbonContainerS enable applications to
specify a maximum carbon emissions rate (in gCOe/hr), and then
transparently enforce this rate via a combination of vertical scaling,
container migration, and suspend/resume while maximizing either
energy-efficiency or performance.
Carbon Containers are especially useful for applications that i) must
continue running even during high-carbon periods, and ii) execute in regions
with few variations in carbon-intensity. These low-variability regions also
tend to have high average carbon-intensity, which increases the importance of
regulating carbon emissions. We implement a Carbon Containers prototype by
extending Linux Containers to incorporate the mechanisms above and evaluate it
using real workload traces and carbon-intensity data from multiple regions. We
compare Carbon Containers with prior work that regulates carbon emissions by
suspending/resuming applications during high/low carbon periods. We show that
Carbon Containers are more carbon-efficient and improve performance while
maintaining similar carbon emissions.Comment: ACM Symposium on Cloud Computing (SoCC
No Provisioned Concurrency: Fast RDMA-codesigned Remote Fork for Serverless Computing
Serverless platforms essentially face a tradeoff between container startup
time and provisioned concurrency (i.e., cached instances), which is further
exaggerated by the frequent need for remote container initialization. This
paper presents MITOSIS, an operating system primitive that provides fast remote
fork, which exploits a deep codesign of the OS kernel with RDMA. By leveraging
the fast remote read capability of RDMA and partial state transfer across
serverless containers, MITOSIS bridges the performance gap between local and
remote container initialization. MITOSIS is the first to fork over 10,000 new
containers from one instance across multiple machines within a second, while
allowing the new containers to efficiently transfer the pre-materialized states
of the forked one. We have implemented MITOSIS on Linux and integrated it with
FN, a popular serverless platform. Under load spikes in real-world serverless
workloads, MITOSIS reduces the function tail latency by 89% with orders of
magnitude lower memory usage. For serverless workflow that requires state
transfer, MITOSIS improves its execution time by 86%.Comment: To appear in OSDI'2
Karma: Resource Allocation for Dynamic Demands
The classical max-min fairness algorithm for resource allocation provides
many desirable properties, e.g., Pareto efficiency, strategy-proofness and
fairness. This paper builds upon the observation that max-min fairness
guarantees these properties under a strong assumption -- user demands being
static over time -- and that, for the realistic case of dynamic user demands,
max-min fairness loses one or more of these properties.
We present Karma, a generalization of max-min fairness for dynamic user
demands. The key insight in Karma is to introduce "memory" into max-min
fairness -- when allocating resources, Karma takes users' past allocations into
account: in each quantum, users donate their unused resources and are assigned
credits when other users borrow these resources; Karma carefully orchestrates
exchange of credits across users (based on their instantaneous demands, donated
resources and borrowed resources), and performs prioritized resource allocation
based on users' credits. We prove theoretically that Karma guarantees Pareto
efficiency, online strategy-proofness, and optimal fairness for dynamic user
demands (without future knowledge of user demands). Empirical evaluations over
production workloads show that these properties translate well into practice:
Karma is able to reduce disparity in performance across users to a bare minimum
while maintaining Pareto-optimal system-wide performance.Comment: Accepted for publication in USENIX OSDI 202
HIL: designing an exokernel for the data center
We propose a new Exokernel-like layer to allow mutually untrusting physically deployed services to efficiently share the resources of a data center. We believe that such a layer offers not only efficiency gains, but may also enable new economic models, new applications, and new security-sensitive uses. A prototype (currently in active use) demonstrates that the proposed layer is viable, and can support a variety of existing provisioning tools and use cases.Partial support for this work was provided by the MassTech Collaborative Research Matching Grant Program, National Science Foundation awards 1347525 and 1149232 as well as the several commercial partners of the Massachusetts Open Cloud who may be found at http://www.massopencloud.or
A Serverless Architecture for Efficient and Scalable Monte Carlo Markov Chain Computation
Computer power is a constantly increasing demand in scientific data analyses,
in particular when Markov Chain Monte Carlo (MCMC) methods are involved, for
example for estimating integral functions or Bayesian posterior probabilities.
In this paper, we describe the benefits of a parallel computation of MCMC using
a cloud-based, serverless architecture: first, the computation time can be
spread over thousands of processes, hence greatly reducing the time the user
should wait to have its computation completed. Second, the overhead time
required for running in parallel several processes is minor and grows
logarithmically with respect to the number of processes. Third, the serverless
approach does not require time-consuming efforts for maintaining and updating
the computing infrastructure when/if the number of walkers increases or for
adapting the code to optimally use the infrastructure. The benefits are
illustrated with the computation of the posterior probability distribution of a
real astronomical analysis.Comment: 6 pages, 3 figures. Appeared in ICCBDC '23: Proceedings of the 2023
7th International Conference on Cloud and Big Data Computing - August 202
- …