VSSD Performance Isolation in a SolidState Drive DAWEI

  • Slides: 29
Download presentation
VSSD: Performance Isolation in a Solid-State Drive DA-WEI CHANG, HSIN-HUNG CHEN, WEI-JIAN SU National

VSSD: Performance Isolation in a Solid-State Drive DA-WEI CHANG, HSIN-HUNG CHEN, WEI-JIAN SU National Cheng Kung University Proceeding SOSP '11 Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Introduction(1/3) • Shared storage has become a popular storage solution due to its low

Introduction(1/3) • Shared storage has become a popular storage solution due to its low hardware and administration costs. • Each user's I/O performance can be affected by the I/O activities of the other users. • Many shared storage systems allow users to specify their service-level objectives (SLOs). • To meet the SLOs of the users, I/O performance isolation between the users is required. • The goal of I/O performance isolation is to ensure that the performance experienced by a user is not affected by the I/O activities of the other co-located users.

Introduction(2/3) • Numerous schemes have been proposed to address performance isolation. • For example,

Introduction(2/3) • Numerous schemes have been proposed to address performance isolation. • For example, credit-based schedulers • user credits according to the I/O cost of the user’s requests • schedule user requests based on the remaining credits of the users. • The accuracy of I/O cost accounting has an impact on performance isolation. • Unfortunately, interference between requests from different users can affect the accuracy of I/O cost accounting, resulting in poor performance isolation. • HDD: disk-head interference • SSDs have been considered as an alternative to HDDs.

Introduction(3/3) • However, there are other types of interference that can occur in SSDs.

Introduction(3/3) • However, there are other types of interference that can occur in SSDs. • queuing delay (QD) interference • garbage collection (GC) interference • A novel framework called VSSD is proposed to address the two types of interference. • FACO I/O scheduler is used to eliminate QD interference. • Vi. SA FTL is used to eliminate GC interference.

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Motivation(1/2) • Garbage Collection Interference

Motivation(1/2) • Garbage Collection Interference

Motivation(2/2) • Queuing Delay Interference CH 0 CH 1 CH 2 CH 3 Rb

Motivation(2/2) • Queuing Delay Interference CH 0 CH 1 CH 2 CH 3 Rb 0 Rb 1 Ra 0 Ra 1 Rb 2 Rb 3 Flash chip 0 Flash chip 1 Flash chip 2 Flash chip 3

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

VSSD Design(1/9) • FACO I/O scheduler(a fair creditbased I/O scheduler) is used to eliminate

VSSD Design(1/9) • FACO I/O scheduler(a fair creditbased I/O scheduler) is used to eliminate QD interference. • Vi. SA FTL is used to eliminate GC interference.

VSSD Design(2/9) •

VSSD Design(2/9) •

FACO credit-based I/O scheduler(3/9) • Request dispatching • The FACO scheduler dispatches the next

FACO credit-based I/O scheduler(3/9) • Request dispatching • The FACO scheduler dispatches the next request according to the remaining credits of the users. • Credits => the amount of time that can be used to serve the user’s requests. • Credits are charged on a user for each request issued by the user. • When a user uses up its credits, the requests of the user cannot be served until the user has credits again. • Credits are replenished periodically.

FACO credit-based I/O scheduler(4/9) Pre-charge User 0 Credit: 100 s 1. Select the user

FACO credit-based I/O scheduler(4/9) Pre-charge User 0 Credit: 100 s 1. Select the user with the maximum remaining credits 2. Have not yet used up their credits 3. Have non-empty user queues User 1 200 s User 2 150 s User 3 250 s W W R R W FACO scheduler Vi. SA FTL

FACO credit-based I/O scheduler(5/9) • t 2 t 1 t 0

FACO credit-based I/O scheduler(5/9) • t 2 t 1 t 0

FACO credit-based I/O scheduler(6/9) •

FACO credit-based I/O scheduler(6/9) •

FACO credit-based I/O scheduler(7/9) •

FACO credit-based I/O scheduler(7/9) •

Vi. SA Flash Translation Layer(8/9) • Traditional mixed-user allocation cause GC interference. • Vi.

Vi. SA Flash Translation Layer(8/9) • Traditional mixed-user allocation cause GC interference. • Vi. SA FTL is a page-mapped FTL. • Different from traditional page-mapped FTLs, separate space allocation is adopted in the Vi. SA FTL. • Separate physical space is allocated for each user according to the SLO of the user. • Each victim block contains data belonging to only a single user.

Vi. SA Flash Translation Layer(9/9)

Vi. SA Flash Translation Layer(9/9)

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Evaluation(1/7) • The VSSD framework is implemented in a Disk. Sim-based SSD simulator, the

Evaluation(1/7) • The VSSD framework is implemented in a Disk. Sim-based SSD simulator, the SSD extension for Disk. Sim 4. 0.

Evaluation(2/7)

Evaluation(2/7)

Evaluation(3/7) • Effectiveness of the FACO Scheduler and the Vi. SA FTL

Evaluation(3/7) • Effectiveness of the FACO Scheduler and the Vi. SA FTL

 • Effectiveness of VSSD Evaluation(4/7)

• Effectiveness of VSSD Evaluation(4/7)

 • Effectiveness of VSSD Evaluation(5/7)

• Effectiveness of VSSD Evaluation(5/7)

 • Effectiveness of VSSD Evaluation(6/7)

• Effectiveness of VSSD Evaluation(6/7)

Evaluation(7/7) • Performance under Different Levels of Space Separation

Evaluation(7/7) • Performance under Different Levels of Space Separation

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Outline • Introduction • Motivation • VSSD Design • Evaluation • Conclusion

Conclusion • Performance isolation is essential in shared storage systems, and interference between requests

Conclusion • Performance isolation is essential in shared storage systems, and interference between requests from different users on a shared storage system can affect the accuracy of I/O cost accounting, resulting in poor performance isolation. • The FACO scheduler dispatches user requests according to the remaining credits of the users and charges credits according to the I/O cost of each request. • The Vi. SA FTL uses separate space allocation to eliminate garbage collection interference.

Thank you for listening

Thank you for listening