Font Size: a A A

Analysis And Optimization Of I/O Fairness Scheduling For Solid State Drives

Posted on:2022-01-04Degree:DoctorType:Dissertation
Country:ChinaCandidate:H FanFull Text:PDF
GTID:1488306572973529Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Due to high throughput,low latency,and low power consumption,Solid-State Drives(SSDs)are replacing Hard Disk Drives(HDDs)to bridge the performance gap between memory and storage.However,with the continuous improvement of computer systems' parallelism and the popularity of cloud computing,it is common that different kinds of I/O intensive workloads concurrently access a shared SSD.This aggravates competition for I/O resources and leads to fairness issues.At the software layer,the traditional I/O stack for HDD ignores the features of SSD which causes unfairness of SSD.At the hardware layer,the complex internal design of SSD makes it challenging to ensure I/O fairness.On the one hand,SSD components,such as address translation,scheduling units,and flash memory,lack coordination for fairness.On the other hand,internal operations caused by Garbage Collection(GC)may affect the execution of workloads and aggravate I/O fairness.Therefore,it is necessary to comprehensively analyze the impact of SSD's features on I/O fairness and effectively schedule workloads accordingly at the software and hardware layers.In an effort to improve I/O fairness at the software layer,an NCQ-aware scheduling framework(NASS)is proposed.I/O fairness at the software layer is affected by Native Command Queueing(NCQ).When one workload occupies most of the NCQ space,NCQ conflict occurs which holds back SSD to process other workloads in time.Furthermore,the anticipation mechanism for improving the fairness of I/O scheduler causes low NCQ utilization due to the suspension of request scheduling,thus reducing device utilization.The basic idea of NASS is to elaborately control the request dispatch of workloads to relieve NCQ conflict and improve NCQ utilization.NASS includes a workload evaluation model that can identify workloads that cause NCQ conflict and low NCQ utilization.According to the model,NASS carries out request dispatch control for workloads.Specifically,NASS limits workloads that dispatch excessive requests to NCQ and reserves NCQ space for workloads whose requests arrive at low speed.Experimental results show that with NASS,I/O schedulers can achieve 11-23% better fairness.Aiming at efficient I/O fairness scheduling at the hardware layer,a fair transaction scheduling based on dynamic address translation(FTSAT)is proposed.The lack of coordination among SSD components causes unfairness.First,if address translation ignores the status of chip queues and parallelism of SSD,chip queues that schedule transactions independently show different fairness results and transactions from different workloads show address conflicts due to uneven transaction distribution.Second,if the fairness-based scheduling unit ignores SSD's capability and parallelism,scheduling decisions cannot be executed effectively,because the transactions of different workloads may compete for storage resources or cannot fully use storage resources.The key idea of FTSAT is to map and schedule transactions based on the parallelism and capability of SSD.First,FTSAT maps transactions to storage units by a fairness-based dynamic address translation method to distribute transactions among chip queues evenly.And then,FTSAT realizes throughput control for workloads to prevent competition among workloads and make sure scheduling decisions are executed in time.Finally,FTSAT carries out fairness-based transaction scheduling based on the parallelism features of SSD.Compared to existing fairness scheduling methods,FTSAT improves 39% I/O fairness while preserving high parallelism.To reduce the impact of GC on I/O fairness,a fairness-aware GC strategy(FGC)is designed.GC's timing and block selection may affect I/O fairness.On the one hand,due to the improper timing of GC,workloads' transactions that come during GC may not be executed in time.On the other hand,block selection strategies of GC lack fairness consideration which causes resources of a workload over-occupied by GC transactions.Therefore,a fairness-aware GC strategy(FGC)is designed.FGC includes a garbage collection evaluation model,which can evaluate the timing of GC based on workload latency,block status,and transaction arrival time to avoid SSD executing GC at the time that degrades I/O fairness.Besides,FGC takes I/O fairness into consideration when selecting GC blocks so that workloads can fairly share transactions generated by GC.Experimental results show that FGC improves 36% fairness compared to the original GC.
Keywords/Search Tags:SSD, device utilization, I/O scheduler, transaction scheduling, garbage collection, fairness
PDF Full Text Request
Related items