DOC PREVIEW
CMU CS 15410 - Lecture

This preview shows page 1-2-3-20-21-40-41-42 out of 42 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 42 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

A framework for implementing IO bound maintenance applications Eno Thereska PARALLEL DATA LABORATORY Carnegie Mellon University Disk maintenance applications Lots of disk maintenance apps data protection backup storage optimization defrag load bal caching write backs Important for system robustness Background activities should eventually complete ideally without interfering with primary apps http www pdl cmu edu 2 Eno Thereska November 2004 Current approaches Client workload Backup throughput MB s Implement maintenance application as foreground application competes for bandwidth or off hours only http www pdl cmu edu 3 Eno Thereska November 2004 Current approaches Client workload Cache writeback throughput MB s Trickle maintenance activity periodically lost opportunities due to inadequate scheduling decisions http www pdl cmu edu 4 Eno Thereska November 2004 Real support for background applications Push maintenance activities in the background priorities and explicit support for them APIs allow application expressiveness Storage subsystem does the scheduling using idle time if there is any using otherwise wasted rotational latency in a busy system http www pdl cmu edu 5 Eno Thereska November 2004 Outline Motivation and overview The freeblock subsystem Background application interfaces Example applications Conclusions http www pdl cmu edu 6 Eno Thereska November 2004 The freeblock subsystem Disk scheduling subsystem supporting new APIs with explicit background requests Finds time for background activities by detecting idle time short and long bursts by utilizing otherwise wasted rotational latency in a busy system http www pdl cmu edu 7 Eno Thereska November 2004 After reading blue sector After BLUE read http www pdl cmu edu 8 Eno Thereska November 2004 Red request scheduled next After BLUE read http www pdl cmu edu 9 Eno Thereska November 2004 Seek to Red s track After BLUE read http www pdl cmu edu Seek for RED 10 Eno Thereska November 2004 Wait for Red sector to reach head After BLUE read http www pdl cmu edu Seek for RED Rotational latency 11 Eno Thereska November 2004 Read Red sector After BLUE read http www pdl cmu edu Seek for RED Rotational latency 12 After RED read Eno Thereska November 2004 Traditional service time components After BLUE read Seek for RED Rotational latency After RED read Rotational latency is wasted time http www pdl cmu edu 13 Eno Thereska November 2004 Rotational latency gap utilization After BLUE read http www pdl cmu edu 14 Eno Thereska November 2004 Seek to Third track After BLUE read Seek to Third SEEK http www pdl cmu edu 15 Eno Thereska November 2004 Free transfer After BLUE read SEEK http www pdl cmu edu Seek to Third Free transfer FREE TRANSFER 16 Eno Thereska November 2004 Seek to Red s track After BLUE read SEEK http www pdl cmu edu Seek to Third Free transfer FREE TRANSFER 17 Seek to RED SEEK Eno Thereska November 2004 Read Red sector After BLUE read SEEK http www pdl cmu edu Seek to Third Free transfer FREE TRANSFER 18 Seek to RED After RED read SEEK Eno Thereska November 2004 Steady background I O progress 40 from idle time 35 from rotational gaps Free MB s 30 25 20 15 10 5 0 0 10 20 30 40 50 60 70 80 90 100 disk utilization by foreground random 4KB reads writes http www pdl cmu edu 19 Eno Thereska November 2004 The freeblock subsystem cont Implemented in FreeBSD Efficient scheduling low CPU and memory utilizations Minimal impact on foreground workloads 2 See refs for more details http www pdl cmu edu 20 Eno Thereska November 2004 Outline Motivation and overview The freeblock subsystem Background application interfaces Example applications Conclusions http www pdl cmu edu 21 Eno Thereska November 2004 Application programming interface API goals Work exposed but done opportunistically all disk accesses are asynchronous Minimized memory induced constraints late binding of memory buffers late locking of memory buffers Block size can be application specific Support for speculative tasks Support for rate control http www pdl cmu edu 22 Eno Thereska November 2004 API description task registration application fb read addr range blksize fb write addr range blksize Background Foreground background scheduler foreground scheduler http www pdl cmu edu 23 Eno Thereska November 2004 API description task completion application callback fn addr buffer flag Foreground Background background scheduler foreground scheduler http www pdl cmu edu 24 Eno Thereska November 2004 API description late locking of buffers application buffer getbuffer fn addr Foreground Background background scheduler foreground scheduler http www pdl cmu edu 25 Eno Thereska November 2004 API description aborting promoting tasks application fb abort addr range fb promote addr range Background Foreground background scheduler foreground scheduler http www pdl cmu edu 26 Eno Thereska November 2004 Complete API http www pdl cmu edu 27 Eno Thereska November 2004 Designing disk maintenance applications APIs talk in terms of logical blocks LBNs Some applications need structured version as presented by file system or database Example consistency issues application wants to read file foo registers task for inode s blocks by time blocks read file may not exist anymore http www pdl cmu edu 28 Eno Thereska November 2004 Designing disk maintenance applications Application does not care about structure scrubbing data migration array reconstruction Coordinate with file system database cache write backs LFS cleaner index generation Utilize snapshots backup background fsck http www pdl cmu edu 29 Eno Thereska November 2004 Outline Motivation and overview The freeblock subsystem Background application interfaces Example applications Conclusions http www pdl cmu edu 30 Eno Thereska November 2004 Example 1 Physical backup Backup done using snapshots snapshot subsystem in FS sys fb getrecord getblks sys fb read backup application freeblock subsystem http www pdl cmu edu 31 Eno Thereska November 2004 Example 1 Physical backup Experimental setup 18 GB Seagate Cheetah 36ES FreeBSD in kernel implementation PIII with 384MB of RAM 3 benchmarks used Synthetic TPC C Postmark snapshot includes 12GB of disk GOAL read whole snapshot for free http www pdl cmu edu 32 Eno Thereska November 2004 Backup completed for free 90 80 Backup time mins 70 60 50 2 impact on foreground workload 40 30 20 10 0 Idle system http www pdl cmu edu Synthetic TPC C 33 Postmark Eno Thereska November 2004 Example 2 Cache write backs Must


View Full Document

CMU CS 15410 - Lecture

Download Lecture
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?