SlideShare a Scribd company logo
1 of 41
Towards User-Defined SLA in
Cloud Flash Storage
Speaker: Po-Chaun, Chen
• Abstract
• Introduction
• Background & related work
• User-Defined Storage
• Tail Latency Problem with NAND Flash
• SLA Curve (Arithmetic)
• SLA Curve (System Design)
• SLA-Aware Data Placement
• SLA-Enforcing I/O scheduling
• Implementation
• Evaluation
• Resource Utilization
• Performance SLA
• Discussion
• Conclusion
Abstract
• Difference between users and cloud providers
For users,
storage applications
often request
asymmetric read and write
bandwidth, with tail read
latency guarantee.
For cloud providers,
typical cloud SSD offerings either provide
read-write aggregate throughput
guarantee or only specifies peak pure-
read and write throughput.
Problems
It is also hard for cloud NAND flash SSDs to provide tail latency
guarantees because of their notorious read-write interference problem.
As a result, users have to over-provision SSD resource to satisfy their
service level agreement (SLA), leading to potential under-utilization.
Regulator
It define their SLA for NAND flash based cloud storage
Regulator first proposes
 a formalization of user-defined SLA as SLA Curve
 an SLA-aware data placement algorithm
 a runtime QoS module
Regulator can increase cloud flash
utilization by 15%~44% while
satisfying user-defined SLAs.
Introduction
NAND flash SSD is receiving increasingly wider adoption in cloud data centers
 provide much higher throughput
 much lower access latency
 much better random access performance
Different needed
• Bandwidth
• Users require various kinds of performance guarantees
• Cloud SSDs cannot provide such flexibility
• Throughput
• Users require distinguish reads and writes
• Cloud SSDs only offer overall throughput guarantee
• Latency
• Users expect their storage devices to have tail latency guarantee
• NAND flash suffers read-write interference
Used : runs read-write mixed application
Reserved : maximum aggregate throughput under all read-write-ratios
Wasted : some situation that its application never reaches
Actual SSD : available bandwidth of the physical SSD
Why ?
• The SSD is not able to serve the tenant even though it only actually
uses a small portion of its bandwidth capability
• Their actual SSD throughput area would shrink dramatically, because
only little write would be allowed under read-write interference.
How ?
As resource disaggregation breaks server boundaries, cloud operators
are able to do more fine-grained resource allocation according to user
requirements while achieving better utilization.
Regulator
 SLA Curves :
express both read-write asymmetry and read latency sensitivity in
applications and SSDs.
 A novel resource allocation algorithm :
increase flash utilization, efficiently place different kinds of tenants onto
physical SSDs.
 QoS module :
schedules I/O requests sent to SSDs to enforce SLA.
This paper prototype Regulator using SPDK
Storage Performance Development Kit
provides a set of tools and libraries for writing high
performance, scalable, user-mode storage applications.
• Abstract
• Introduction
• Background & related work
• User-Defined Storage
• Tail Latency Problem with NAND Flash
• SLA Curve (Arithmetic)
• SLA Curve (System Design)
• SLA-Aware Data Placement
• SLA-Enforcing I/O scheduling
• Implementation
• Evaluation
• Resource Utilization
• Performance SLA
• Discussion
• Conclusion
User-Defined Storage
• User Defined Cloud (UDC), which is quite similar to our user-defined
SLA methodology.
• Instead of letting cloud providers offer fixed hardware options, UDC
proposes that users can customize virtual hardware according to their
own requirement, which would increase overall resource utilization.
Tail Latency Problem
NAND flash based SSDs are notorious for their bad tail latency because
of the read-write interference problem.
Using Samsung PM963, which is a widely
adopted NAND flash SSD in data center.
We choose to focus on read tail
latency here because in read-
write interference,
only read is influenced by write
but not vice versa
Observation
• Caused by SSD background operations incurred by writes, including write
buffer flush and garbage collection.
• By controlling read and write throughput, we can make SSD internal
activities happen less frequently, thus improving tail latency, which is a
statistical result.
Some solutions
 Smart IO/FIOS : I/O scheduler
 ReFlex : Model (assigned weight to writes)
 Flash on Rails : split SSD work into different slices
 LinnOS : lightweight neural network
 SWAN : split all-flash array into frontend SSD
(log-structured writes & backend GC)
• Abstract
• Introduction
• Background & related work
• User-Defined Storage
• Tail Latency Problem with NAND Flash
• SLA Curve (Arithmetic)
• SLA Curve (System Design)
• SLA-Aware Data Placement
• SLA-Enforcing I/O scheduling
• Implementation
• Evaluation
• Resource Utilization
• Performance SLA
• Discussion
• Conclusion
SLA Curve
• Represent tenants’ bandwidth requirements as well as storage
devices’ service capability
• Describes the maximum read throughput for each write throughput
while achieving a certain read tail latency guarantee
• This paper define SLA Curve as a function of write throughput.
SLA Curve
By ensuring read and write throughput under the SLA Curve, we can
keep the frequency of SSD’s internal activities low enough, therefore
guaranteeing tail latency.
This paper derive the SLA curve with
a convex hull algorithm on the sampled points.
SLA Arithmetic
When multiple tenants are sharing the same storage device, we need to
know their aggregate bandwidth requirements.
When one tenant is assigned to a storage device, We need to calculate the
remaining service capability of the device.
• Abstract
• Introduction
• Background & related work
• User-Defined Storage
• Tail Latency Problem with NAND Flash
• SLA Curve (Arithmetic)
• SLA Curve (System Design)
• SLA-Aware Data Placement
• SLA-Enforcing I/O scheduling
• Implementation
• Evaluation
• Resource Utilization
• Performance SLA
• Discussion
• Conclusion
SLA Curve based system design
SLA-Aware Data Placement
• Multiple tenants typically share multiple physical storage units
• The multi-tenant resource placement problem is often modeled as a
bin packing problem (NP-hard)
• Using best-fit
It greedily selects the bin with the minimum capacity remaining that
can fit the item.
Then, if no available bin can fit the item, it starts a new bin.
Difference between traditional way
• For the first phase, the "size" and "capacity" of tenants and storage units
are described using SLA Curves instead of a scalar value
• And we need to consider which type of storage unit to select when we
need a new one
• Specifically, we consider not only whether the device’s curve fits tenant’s
demand, but also how well the two curves align with each other
Metrics can be used for SLA Curve alignment
 Dot product which emphasizes the shape similarity between SLA Curves
 L2-norm which represents the distance between SLA Curves
 Ratio between areas of two SLA Curves
And then
 Start a new storage unit in the second phase, the Regulator data
placement algorithm greedily chooses the storage unit that minimizes
the cost for the current tenant.
 Specifically, it calculates the cost needed to fit the tenant’s SLA
requirement for each type of storage unit.
 If a single storage unit can not meet the need of the tenant, the
algorithm strips the data across multiple storage units to avoid hotspots.
About tail latency guarantees
• Some tenants may require tail latency guarantees so strict that it is
hard to provide with plain NAND SSDs.
• To satisfy such tail requirements, we leverage to construct redundant
SSD arrays without read-write interference.
• Abstract
• Introduction
• Background & related work
• User-Defined Storage
• Tail Latency Problem with NAND Flash
• SLA Curve (Arithmetic)
• SLA Curve (System Design)
• SLA-Aware Data Placement
• SLA-Enforcing I/O scheduling
• Implementation
• Evaluation
• Resource Utilization
• Performance SLA
• Discussion
• Conclusion
SLA-Enforcing I/O scheduling
• The SLA needs to be actually enforced at runtime
• Regulator’s I/O scheduler does so by controlling the read and write
throughput of each tenant sharing a same storage unit
• To control the bandwidth of both reads and writes, the Regulator I/O
scheduler performs curve-based rate limiting
Rule
In each time slice, it tracks the read and write bandwidth usage of each
tenant.
When the request comes :
while (current bandwidth usage > SLA curve) {
Waiting in queue
}
Submits the requests
But actually …
• The method do not recommend choosing an SLA Curve that covers all the
bandwidth outliers because that will likely cause a waste of bandwidth
• The Regulator scheduler can optionally allow
tenants to temporarily burst above their SLA Curves
Dispatch
• The bursty accesses are only scheduled when no non-bursty request
is waiting to be dispatched.
• When multiple tenants burst above their curve, the Regulator
scheduler uses weighted round robin to share the extra bandwidth.
• Larger than 64KB will be spliced
The I/O scheduling
• The I/O scheduling is done on the storage units
 Because they have full knowledge about all tenants that are accessing them
 It can make sure the storage device always runs under its desired SLA curve
• Abstract
• Introduction
• Background & related work
• User-Defined Storage
• Tail Latency Problem with NAND Flash
• SLA Curve (Arithmetic)
• SLA Curve (System Design)
• SLA-Aware Data Placement
• SLA-Enforcing I/O scheduling
• Implementation
• Evaluation
• Resource Utilization
• Performance SLA
• Discussion
• Conclusion
Brief
• It implemented a prototype system for Regulator mainly based on
Storage Performance Development Kit (SPDK)
• It implemented the Regulator controller in C++.
• The Regulator I/O scheduler is implemented as an extension of SPDK’s
bdev layer at the storage server.
Resource allocation
Performance SLA
• Abstract
• Introduction
• Background & related work
• User-Defined Storage
• Tail Latency Problem with NAND Flash
• SLA Curve (Arithmetic)
• SLA Curve (System Design)
• SLA-Aware Data Placement
• SLA-Enforcing I/O scheduling
• Implementation
• Evaluation
• Resource Utilization
• Performance SLA
• Discussion
• Conclusion
Discussion
• Obtaining SLA Curves
• Hardware acceleration
• Generalize to other types of storage
User-Defined SLA in Cloud Flash Storage

More Related Content

Similar to Towards User-Defined SLA in Cloud Flash Storage.pptx

Ceph Day New York 2014: Best Practices for Ceph-Powered Implementations of St...
Ceph Day New York 2014: Best Practices for Ceph-Powered Implementations of St...Ceph Day New York 2014: Best Practices for Ceph-Powered Implementations of St...
Ceph Day New York 2014: Best Practices for Ceph-Powered Implementations of St...Ceph Community
 
Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community
 
Scylla Summit 2022: Scylla 5.0 New Features, Part 1
Scylla Summit 2022: Scylla 5.0 New Features, Part 1Scylla Summit 2022: Scylla 5.0 New Features, Part 1
Scylla Summit 2022: Scylla 5.0 New Features, Part 1ScyllaDB
 
SAP HANA System Replication (HSR) versus SAP Replication Server (SRS)
SAP HANA System Replication (HSR) versus SAP Replication Server (SRS)SAP HANA System Replication (HSR) versus SAP Replication Server (SRS)
SAP HANA System Replication (HSR) versus SAP Replication Server (SRS)Gary Jackson MBCS
 
From cache to in-memory data grid. Introduction to Hazelcast.
From cache to in-memory data grid. Introduction to Hazelcast.From cache to in-memory data grid. Introduction to Hazelcast.
From cache to in-memory data grid. Introduction to Hazelcast.Taras Matyashovsky
 
Why does my choice of storage matter with cassandra?
Why does my choice of storage matter with cassandra?Why does my choice of storage matter with cassandra?
Why does my choice of storage matter with cassandra?Johnny Miller
 
Building Data Pipelines with SMACK: Designing Storage Strategies for Scale an...
Building Data Pipelines with SMACK: Designing Storage Strategies for Scale an...Building Data Pipelines with SMACK: Designing Storage Strategies for Scale an...
Building Data Pipelines with SMACK: Designing Storage Strategies for Scale an...DataStax
 
M6d cassandrapresentation
M6d cassandrapresentationM6d cassandrapresentation
M6d cassandrapresentationEdward Capriolo
 
Inter connect2016 yss1841-cloud-storage-options-v4
Inter connect2016 yss1841-cloud-storage-options-v4Inter connect2016 yss1841-cloud-storage-options-v4
Inter connect2016 yss1841-cloud-storage-options-v4Tony Pearson
 
FlashEmbedding: Storing Embedding Tables in SSD for Large-Scale Recommender S...
FlashEmbedding: Storing Embedding Tables in SSD for Large-Scale Recommender S...FlashEmbedding: Storing Embedding Tables in SSD for Large-Scale Recommender S...
FlashEmbedding: Storing Embedding Tables in SSD for Large-Scale Recommender S...Po-Chuan Chen
 
Handling Massive Writes
Handling Massive WritesHandling Massive Writes
Handling Massive WritesLiran Zelkha
 
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase CreateWebinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase CreateStorage Switzerland
 
Healthcare Claim Reimbursement using Apache Spark
Healthcare Claim Reimbursement using Apache SparkHealthcare Claim Reimbursement using Apache Spark
Healthcare Claim Reimbursement using Apache SparkDatabricks
 
How to Design a Scalable Private Cloud
How to Design a Scalable Private CloudHow to Design a Scalable Private Cloud
How to Design a Scalable Private CloudAFCOM
 
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...Denny Lee
 
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best PracticesVMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best PracticesVMworld
 
Performance and Scalability Tuning
Performance and Scalability TuningPerformance and Scalability Tuning
Performance and Scalability TuningAndres March
 
AWS re:Invent 2013 Recap
AWS re:Invent 2013 RecapAWS re:Invent 2013 Recap
AWS re:Invent 2013 RecapBarry Jones
 

Similar to Towards User-Defined SLA in Cloud Flash Storage.pptx (20)

Ceph Day New York 2014: Best Practices for Ceph-Powered Implementations of St...
Ceph Day New York 2014: Best Practices for Ceph-Powered Implementations of St...Ceph Day New York 2014: Best Practices for Ceph-Powered Implementations of St...
Ceph Day New York 2014: Best Practices for Ceph-Powered Implementations of St...
 
Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph Ceph Community Talk on High-Performance Solid Sate Ceph
Ceph Community Talk on High-Performance Solid Sate Ceph
 
Azure DBA with IaaS
Azure DBA with IaaSAzure DBA with IaaS
Azure DBA with IaaS
 
Scylla Summit 2022: Scylla 5.0 New Features, Part 1
Scylla Summit 2022: Scylla 5.0 New Features, Part 1Scylla Summit 2022: Scylla 5.0 New Features, Part 1
Scylla Summit 2022: Scylla 5.0 New Features, Part 1
 
SAP HANA System Replication (HSR) versus SAP Replication Server (SRS)
SAP HANA System Replication (HSR) versus SAP Replication Server (SRS)SAP HANA System Replication (HSR) versus SAP Replication Server (SRS)
SAP HANA System Replication (HSR) versus SAP Replication Server (SRS)
 
From cache to in-memory data grid. Introduction to Hazelcast.
From cache to in-memory data grid. Introduction to Hazelcast.From cache to in-memory data grid. Introduction to Hazelcast.
From cache to in-memory data grid. Introduction to Hazelcast.
 
Why does my choice of storage matter with cassandra?
Why does my choice of storage matter with cassandra?Why does my choice of storage matter with cassandra?
Why does my choice of storage matter with cassandra?
 
Building Data Pipelines with SMACK: Designing Storage Strategies for Scale an...
Building Data Pipelines with SMACK: Designing Storage Strategies for Scale an...Building Data Pipelines with SMACK: Designing Storage Strategies for Scale an...
Building Data Pipelines with SMACK: Designing Storage Strategies for Scale an...
 
M6d cassandrapresentation
M6d cassandrapresentationM6d cassandrapresentation
M6d cassandrapresentation
 
Inter connect2016 yss1841-cloud-storage-options-v4
Inter connect2016 yss1841-cloud-storage-options-v4Inter connect2016 yss1841-cloud-storage-options-v4
Inter connect2016 yss1841-cloud-storage-options-v4
 
FlashEmbedding: Storing Embedding Tables in SSD for Large-Scale Recommender S...
FlashEmbedding: Storing Embedding Tables in SSD for Large-Scale Recommender S...FlashEmbedding: Storing Embedding Tables in SSD for Large-Scale Recommender S...
FlashEmbedding: Storing Embedding Tables in SSD for Large-Scale Recommender S...
 
Handling Massive Writes
Handling Massive WritesHandling Massive Writes
Handling Massive Writes
 
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase CreateWebinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
Webinar: Overcoming the Storage Challenges Cassandra and Couchbase Create
 
Healthcare Claim Reimbursement using Apache Spark
Healthcare Claim Reimbursement using Apache SparkHealthcare Claim Reimbursement using Apache Spark
Healthcare Claim Reimbursement using Apache Spark
 
How to Design a Scalable Private Cloud
How to Design a Scalable Private CloudHow to Design a Scalable Private Cloud
How to Design a Scalable Private Cloud
 
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...
Building and Deploying Large Scale SSRS using Lessons Learned from Customer D...
 
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best PracticesVMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
VMworld 2014: Advanced SQL Server on vSphere Techniques and Best Practices
 
moi-connect16
moi-connect16moi-connect16
moi-connect16
 
Performance and Scalability Tuning
Performance and Scalability TuningPerformance and Scalability Tuning
Performance and Scalability Tuning
 
AWS re:Invent 2013 Recap
AWS re:Invent 2013 RecapAWS re:Invent 2013 Recap
AWS re:Invent 2013 Recap
 

More from Po-Chuan Chen

Effective Structured Prompting by Meta-Learning and Representative Verbalizer...
Effective Structured Prompting by Meta-Learning and Representative Verbalizer...Effective Structured Prompting by Meta-Learning and Representative Verbalizer...
Effective Structured Prompting by Meta-Learning and Representative Verbalizer...Po-Chuan Chen
 
Quark: Controllable Text Generation with Reinforced [Un]learning.pdf
Quark: Controllable Text Generation with Reinforced [Un]learning.pdfQuark: Controllable Text Generation with Reinforced [Un]learning.pdf
Quark: Controllable Text Generation with Reinforced [Un]learning.pdfPo-Chuan Chen
 
Empathetic Dialogue Generation via Sensitive Emotion Recognition and Sensible...
Empathetic Dialogue Generation via Sensitive Emotion Recognition and Sensible...Empathetic Dialogue Generation via Sensitive Emotion Recognition and Sensible...
Empathetic Dialogue Generation via Sensitive Emotion Recognition and Sensible...Po-Chuan Chen
 
On the Effectiveness of Offline RL for Dialogue Response Generation.pdf
On the Effectiveness of Offline RL for Dialogue Response Generation.pdfOn the Effectiveness of Offline RL for Dialogue Response Generation.pdf
On the Effectiveness of Offline RL for Dialogue Response Generation.pdfPo-Chuan Chen
 
GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transfor...
GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transfor...GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transfor...
GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transfor...Po-Chuan Chen
 
A Statistical Perspective on Retrieval-Based Models.pdf
A Statistical Perspective on Retrieval-Based Models.pdfA Statistical Perspective on Retrieval-Based Models.pdf
A Statistical Perspective on Retrieval-Based Models.pdfPo-Chuan Chen
 
A Neural Corpus Indexer for Document Retrieval.pdf
A Neural Corpus Indexer for Document Retrieval.pdfA Neural Corpus Indexer for Document Retrieval.pdf
A Neural Corpus Indexer for Document Retrieval.pdfPo-Chuan Chen
 
AdaMix: Mixture-of-Adaptations for Parameter-efficient Model Tuning.pdf
AdaMix: Mixture-of-Adaptations for Parameter-efficient Model Tuning.pdfAdaMix: Mixture-of-Adaptations for Parameter-efficient Model Tuning.pdf
AdaMix: Mixture-of-Adaptations for Parameter-efficient Model Tuning.pdfPo-Chuan Chen
 
LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attent...
LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attent...LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attent...
LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attent...Po-Chuan Chen
 
Active Retrieval Augmented Generation.pdf
Active Retrieval Augmented Generation.pdfActive Retrieval Augmented Generation.pdf
Active Retrieval Augmented Generation.pdfPo-Chuan Chen
 
Offline Reinforcement Learning for Informal Summarization in Online Domains.pdf
Offline Reinforcement Learning for Informal Summarization in Online Domains.pdfOffline Reinforcement Learning for Informal Summarization in Online Domains.pdf
Offline Reinforcement Learning for Informal Summarization in Online Domains.pdfPo-Chuan Chen
 
Cold_Start_Reinforcement_Learning_with_Softmax_Policy_Gradient.pdf
Cold_Start_Reinforcement_Learning_with_Softmax_Policy_Gradient.pdfCold_Start_Reinforcement_Learning_with_Softmax_Policy_Gradient.pdf
Cold_Start_Reinforcement_Learning_with_Softmax_Policy_Gradient.pdfPo-Chuan Chen
 
Image_to_Prompts.pdf
Image_to_Prompts.pdfImage_to_Prompts.pdf
Image_to_Prompts.pdfPo-Chuan Chen
 
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdfRetrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdfPo-Chuan Chen
 
Evaluating Parameter Efficient Learning for Generation.pdf
Evaluating Parameter Efficient Learning for Generation.pdfEvaluating Parameter Efficient Learning for Generation.pdf
Evaluating Parameter Efficient Learning for Generation.pdfPo-Chuan Chen
 
Off-Policy Deep Reinforcement Learning without Exploration.pdf
Off-Policy Deep Reinforcement Learning without Exploration.pdfOff-Policy Deep Reinforcement Learning without Exploration.pdf
Off-Policy Deep Reinforcement Learning without Exploration.pdfPo-Chuan Chen
 
A Mixture-of-Expert Approach to RL-based Dialogue Management.pdf
A Mixture-of-Expert Approach to RL-based Dialogue Management.pdfA Mixture-of-Expert Approach to RL-based Dialogue Management.pdf
A Mixture-of-Expert Approach to RL-based Dialogue Management.pdfPo-Chuan Chen
 
Is Reinforcement Learning (Not) for Natural Language Processing.pdf
Is Reinforcement Learning (Not) for Natural
Language Processing.pdfIs Reinforcement Learning (Not) for Natural
Language Processing.pdf
Is Reinforcement Learning (Not) for Natural Language Processing.pdfPo-Chuan Chen
 
HyperPrompt:Prompt-based Task-Conditioning of Transformerspdf
HyperPrompt:Prompt-based Task-Conditioning of TransformerspdfHyperPrompt:Prompt-based Task-Conditioning of Transformerspdf
HyperPrompt:Prompt-based Task-Conditioning of TransformerspdfPo-Chuan Chen
 
Training language models to follow instructions with human feedback.pdf
Training language models to follow instructions
with human feedback.pdfTraining language models to follow instructions
with human feedback.pdf
Training language models to follow instructions with human feedback.pdfPo-Chuan Chen
 

More from Po-Chuan Chen (20)

Effective Structured Prompting by Meta-Learning and Representative Verbalizer...
Effective Structured Prompting by Meta-Learning and Representative Verbalizer...Effective Structured Prompting by Meta-Learning and Representative Verbalizer...
Effective Structured Prompting by Meta-Learning and Representative Verbalizer...
 
Quark: Controllable Text Generation with Reinforced [Un]learning.pdf
Quark: Controllable Text Generation with Reinforced [Un]learning.pdfQuark: Controllable Text Generation with Reinforced [Un]learning.pdf
Quark: Controllable Text Generation with Reinforced [Un]learning.pdf
 
Empathetic Dialogue Generation via Sensitive Emotion Recognition and Sensible...
Empathetic Dialogue Generation via Sensitive Emotion Recognition and Sensible...Empathetic Dialogue Generation via Sensitive Emotion Recognition and Sensible...
Empathetic Dialogue Generation via Sensitive Emotion Recognition and Sensible...
 
On the Effectiveness of Offline RL for Dialogue Response Generation.pdf
On the Effectiveness of Offline RL for Dialogue Response Generation.pdfOn the Effectiveness of Offline RL for Dialogue Response Generation.pdf
On the Effectiveness of Offline RL for Dialogue Response Generation.pdf
 
GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transfor...
GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transfor...GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transfor...
GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transfor...
 
A Statistical Perspective on Retrieval-Based Models.pdf
A Statistical Perspective on Retrieval-Based Models.pdfA Statistical Perspective on Retrieval-Based Models.pdf
A Statistical Perspective on Retrieval-Based Models.pdf
 
A Neural Corpus Indexer for Document Retrieval.pdf
A Neural Corpus Indexer for Document Retrieval.pdfA Neural Corpus Indexer for Document Retrieval.pdf
A Neural Corpus Indexer for Document Retrieval.pdf
 
AdaMix: Mixture-of-Adaptations for Parameter-efficient Model Tuning.pdf
AdaMix: Mixture-of-Adaptations for Parameter-efficient Model Tuning.pdfAdaMix: Mixture-of-Adaptations for Parameter-efficient Model Tuning.pdf
AdaMix: Mixture-of-Adaptations for Parameter-efficient Model Tuning.pdf
 
LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attent...
LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attent...LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attent...
LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attent...
 
Active Retrieval Augmented Generation.pdf
Active Retrieval Augmented Generation.pdfActive Retrieval Augmented Generation.pdf
Active Retrieval Augmented Generation.pdf
 
Offline Reinforcement Learning for Informal Summarization in Online Domains.pdf
Offline Reinforcement Learning for Informal Summarization in Online Domains.pdfOffline Reinforcement Learning for Informal Summarization in Online Domains.pdf
Offline Reinforcement Learning for Informal Summarization in Online Domains.pdf
 
Cold_Start_Reinforcement_Learning_with_Softmax_Policy_Gradient.pdf
Cold_Start_Reinforcement_Learning_with_Softmax_Policy_Gradient.pdfCold_Start_Reinforcement_Learning_with_Softmax_Policy_Gradient.pdf
Cold_Start_Reinforcement_Learning_with_Softmax_Policy_Gradient.pdf
 
Image_to_Prompts.pdf
Image_to_Prompts.pdfImage_to_Prompts.pdf
Image_to_Prompts.pdf
 
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdfRetrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks.pdf
 
Evaluating Parameter Efficient Learning for Generation.pdf
Evaluating Parameter Efficient Learning for Generation.pdfEvaluating Parameter Efficient Learning for Generation.pdf
Evaluating Parameter Efficient Learning for Generation.pdf
 
Off-Policy Deep Reinforcement Learning without Exploration.pdf
Off-Policy Deep Reinforcement Learning without Exploration.pdfOff-Policy Deep Reinforcement Learning without Exploration.pdf
Off-Policy Deep Reinforcement Learning without Exploration.pdf
 
A Mixture-of-Expert Approach to RL-based Dialogue Management.pdf
A Mixture-of-Expert Approach to RL-based Dialogue Management.pdfA Mixture-of-Expert Approach to RL-based Dialogue Management.pdf
A Mixture-of-Expert Approach to RL-based Dialogue Management.pdf
 
Is Reinforcement Learning (Not) for Natural Language Processing.pdf
Is Reinforcement Learning (Not) for Natural
Language Processing.pdfIs Reinforcement Learning (Not) for Natural
Language Processing.pdf
Is Reinforcement Learning (Not) for Natural Language Processing.pdf
 
HyperPrompt:Prompt-based Task-Conditioning of Transformerspdf
HyperPrompt:Prompt-based Task-Conditioning of TransformerspdfHyperPrompt:Prompt-based Task-Conditioning of Transformerspdf
HyperPrompt:Prompt-based Task-Conditioning of Transformerspdf
 
Training language models to follow instructions with human feedback.pdf
Training language models to follow instructions
with human feedback.pdfTraining language models to follow instructions
with human feedback.pdf
Training language models to follow instructions with human feedback.pdf
 

Recently uploaded

HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 

Recently uploaded (20)

HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 

Towards User-Defined SLA in Cloud Flash Storage.pptx

  • 1. Towards User-Defined SLA in Cloud Flash Storage Speaker: Po-Chaun, Chen
  • 2. • Abstract • Introduction • Background & related work • User-Defined Storage • Tail Latency Problem with NAND Flash • SLA Curve (Arithmetic) • SLA Curve (System Design) • SLA-Aware Data Placement • SLA-Enforcing I/O scheduling • Implementation • Evaluation • Resource Utilization • Performance SLA • Discussion • Conclusion
  • 3. Abstract • Difference between users and cloud providers For users, storage applications often request asymmetric read and write bandwidth, with tail read latency guarantee. For cloud providers, typical cloud SSD offerings either provide read-write aggregate throughput guarantee or only specifies peak pure- read and write throughput.
  • 4. Problems It is also hard for cloud NAND flash SSDs to provide tail latency guarantees because of their notorious read-write interference problem. As a result, users have to over-provision SSD resource to satisfy their service level agreement (SLA), leading to potential under-utilization.
  • 5. Regulator It define their SLA for NAND flash based cloud storage Regulator first proposes  a formalization of user-defined SLA as SLA Curve  an SLA-aware data placement algorithm  a runtime QoS module Regulator can increase cloud flash utilization by 15%~44% while satisfying user-defined SLAs.
  • 6. Introduction NAND flash SSD is receiving increasingly wider adoption in cloud data centers  provide much higher throughput  much lower access latency  much better random access performance
  • 7. Different needed • Bandwidth • Users require various kinds of performance guarantees • Cloud SSDs cannot provide such flexibility • Throughput • Users require distinguish reads and writes • Cloud SSDs only offer overall throughput guarantee • Latency • Users expect their storage devices to have tail latency guarantee • NAND flash suffers read-write interference
  • 8. Used : runs read-write mixed application Reserved : maximum aggregate throughput under all read-write-ratios Wasted : some situation that its application never reaches Actual SSD : available bandwidth of the physical SSD
  • 9. Why ? • The SSD is not able to serve the tenant even though it only actually uses a small portion of its bandwidth capability • Their actual SSD throughput area would shrink dramatically, because only little write would be allowed under read-write interference.
  • 10. How ? As resource disaggregation breaks server boundaries, cloud operators are able to do more fine-grained resource allocation according to user requirements while achieving better utilization.
  • 11. Regulator  SLA Curves : express both read-write asymmetry and read latency sensitivity in applications and SSDs.  A novel resource allocation algorithm : increase flash utilization, efficiently place different kinds of tenants onto physical SSDs.  QoS module : schedules I/O requests sent to SSDs to enforce SLA. This paper prototype Regulator using SPDK Storage Performance Development Kit provides a set of tools and libraries for writing high performance, scalable, user-mode storage applications.
  • 12. • Abstract • Introduction • Background & related work • User-Defined Storage • Tail Latency Problem with NAND Flash • SLA Curve (Arithmetic) • SLA Curve (System Design) • SLA-Aware Data Placement • SLA-Enforcing I/O scheduling • Implementation • Evaluation • Resource Utilization • Performance SLA • Discussion • Conclusion
  • 13. User-Defined Storage • User Defined Cloud (UDC), which is quite similar to our user-defined SLA methodology. • Instead of letting cloud providers offer fixed hardware options, UDC proposes that users can customize virtual hardware according to their own requirement, which would increase overall resource utilization.
  • 14. Tail Latency Problem NAND flash based SSDs are notorious for their bad tail latency because of the read-write interference problem. Using Samsung PM963, which is a widely adopted NAND flash SSD in data center. We choose to focus on read tail latency here because in read- write interference, only read is influenced by write but not vice versa
  • 15. Observation • Caused by SSD background operations incurred by writes, including write buffer flush and garbage collection. • By controlling read and write throughput, we can make SSD internal activities happen less frequently, thus improving tail latency, which is a statistical result.
  • 16. Some solutions  Smart IO/FIOS : I/O scheduler  ReFlex : Model (assigned weight to writes)  Flash on Rails : split SSD work into different slices  LinnOS : lightweight neural network  SWAN : split all-flash array into frontend SSD (log-structured writes & backend GC)
  • 17. • Abstract • Introduction • Background & related work • User-Defined Storage • Tail Latency Problem with NAND Flash • SLA Curve (Arithmetic) • SLA Curve (System Design) • SLA-Aware Data Placement • SLA-Enforcing I/O scheduling • Implementation • Evaluation • Resource Utilization • Performance SLA • Discussion • Conclusion
  • 18. SLA Curve • Represent tenants’ bandwidth requirements as well as storage devices’ service capability • Describes the maximum read throughput for each write throughput while achieving a certain read tail latency guarantee • This paper define SLA Curve as a function of write throughput.
  • 19. SLA Curve By ensuring read and write throughput under the SLA Curve, we can keep the frequency of SSD’s internal activities low enough, therefore guaranteeing tail latency. This paper derive the SLA curve with a convex hull algorithm on the sampled points.
  • 20. SLA Arithmetic When multiple tenants are sharing the same storage device, we need to know their aggregate bandwidth requirements. When one tenant is assigned to a storage device, We need to calculate the remaining service capability of the device.
  • 21. • Abstract • Introduction • Background & related work • User-Defined Storage • Tail Latency Problem with NAND Flash • SLA Curve (Arithmetic) • SLA Curve (System Design) • SLA-Aware Data Placement • SLA-Enforcing I/O scheduling • Implementation • Evaluation • Resource Utilization • Performance SLA • Discussion • Conclusion
  • 22. SLA Curve based system design
  • 23. SLA-Aware Data Placement • Multiple tenants typically share multiple physical storage units • The multi-tenant resource placement problem is often modeled as a bin packing problem (NP-hard) • Using best-fit It greedily selects the bin with the minimum capacity remaining that can fit the item. Then, if no available bin can fit the item, it starts a new bin.
  • 24. Difference between traditional way • For the first phase, the "size" and "capacity" of tenants and storage units are described using SLA Curves instead of a scalar value • And we need to consider which type of storage unit to select when we need a new one • Specifically, we consider not only whether the device’s curve fits tenant’s demand, but also how well the two curves align with each other
  • 25. Metrics can be used for SLA Curve alignment  Dot product which emphasizes the shape similarity between SLA Curves  L2-norm which represents the distance between SLA Curves  Ratio between areas of two SLA Curves
  • 26. And then  Start a new storage unit in the second phase, the Regulator data placement algorithm greedily chooses the storage unit that minimizes the cost for the current tenant.  Specifically, it calculates the cost needed to fit the tenant’s SLA requirement for each type of storage unit.  If a single storage unit can not meet the need of the tenant, the algorithm strips the data across multiple storage units to avoid hotspots.
  • 27. About tail latency guarantees • Some tenants may require tail latency guarantees so strict that it is hard to provide with plain NAND SSDs. • To satisfy such tail requirements, we leverage to construct redundant SSD arrays without read-write interference.
  • 28. • Abstract • Introduction • Background & related work • User-Defined Storage • Tail Latency Problem with NAND Flash • SLA Curve (Arithmetic) • SLA Curve (System Design) • SLA-Aware Data Placement • SLA-Enforcing I/O scheduling • Implementation • Evaluation • Resource Utilization • Performance SLA • Discussion • Conclusion
  • 29. SLA-Enforcing I/O scheduling • The SLA needs to be actually enforced at runtime • Regulator’s I/O scheduler does so by controlling the read and write throughput of each tenant sharing a same storage unit • To control the bandwidth of both reads and writes, the Regulator I/O scheduler performs curve-based rate limiting
  • 30. Rule In each time slice, it tracks the read and write bandwidth usage of each tenant. When the request comes : while (current bandwidth usage > SLA curve) { Waiting in queue } Submits the requests
  • 31.
  • 32. But actually … • The method do not recommend choosing an SLA Curve that covers all the bandwidth outliers because that will likely cause a waste of bandwidth • The Regulator scheduler can optionally allow tenants to temporarily burst above their SLA Curves
  • 33. Dispatch • The bursty accesses are only scheduled when no non-bursty request is waiting to be dispatched. • When multiple tenants burst above their curve, the Regulator scheduler uses weighted round robin to share the extra bandwidth. • Larger than 64KB will be spliced
  • 34. The I/O scheduling • The I/O scheduling is done on the storage units  Because they have full knowledge about all tenants that are accessing them  It can make sure the storage device always runs under its desired SLA curve
  • 35. • Abstract • Introduction • Background & related work • User-Defined Storage • Tail Latency Problem with NAND Flash • SLA Curve (Arithmetic) • SLA Curve (System Design) • SLA-Aware Data Placement • SLA-Enforcing I/O scheduling • Implementation • Evaluation • Resource Utilization • Performance SLA • Discussion • Conclusion
  • 36. Brief • It implemented a prototype system for Regulator mainly based on Storage Performance Development Kit (SPDK) • It implemented the Regulator controller in C++. • The Regulator I/O scheduler is implemented as an extension of SPDK’s bdev layer at the storage server.
  • 39. • Abstract • Introduction • Background & related work • User-Defined Storage • Tail Latency Problem with NAND Flash • SLA Curve (Arithmetic) • SLA Curve (System Design) • SLA-Aware Data Placement • SLA-Enforcing I/O scheduling • Implementation • Evaluation • Resource Utilization • Performance SLA • Discussion • Conclusion
  • 40. Discussion • Obtaining SLA Curves • Hardware acceleration • Generalize to other types of storage
  • 41. User-Defined SLA in Cloud Flash Storage