DOI QR코드

DOI QR Code

Flash Operation Group Scheduling for Supporting QoS of SSD I/O Request Streams

SSD 입출력 요청 스트림들의 QoS 지원을 위한 플래시 연산 그룹 스케줄링

  • 이은규 (숭실대학교 정보통신공학과) ;
  • 원선 (숭실대학교 정보통신공학과) ;
  • 이준우 (숭실대학교 정보통신공학과) ;
  • 김강희 (숭실대학교 정보통신전자공학부) ;
  • 남이현 (SK 텔레콤 스토리지기술연구소)
  • Received : 2015.07.23
  • Accepted : 2015.09.21
  • Published : 2015.12.15

Abstract

As SSDs are increasingly being used as high-performance storage or caches, attention is increasingly paid to the provision of SSDs with Quality-of-Service for I/O request streams of various applications in server systems. Since most SSDs are using the AHCI controller interface on a SATA bus, it is not possible to provide a differentiated service by distinguishing each I/O stream from others within the SSD. However, since a new SSD interface, the NVME controller interface on a PCI Express bus, has been proposed, it is now possible to recognize each I/O stream and schedule I/O requests within the SSD for differentiated services. This paper proposes Flash Operation Group Scheduling within NVME-based flash storage devices, and demonstrates through QEMU-based simulation that we can achieve a proportional bandwidth share for each I/O stream.

최근에 서버 시스템에서 SSD(Solid-State Drive)가 고성능 저장장치 및 캐시로서 많이 사용됨에 따라 다양한 서버 응용들의 입출력 요청 스트림들을 위해 SSD 수준에서 서비스 품질(Quality-of-Service)를 제공할 수 있는지에 대한 관심이 높아지고 있다. 현재까지 대부분의 SSD는 SATA 버스 상에서 AHCI 컨트롤러를 사용해왔기 때문에 각 입출력 스트림을 SSD 내부에서 구별하여 서비스할 수가 없었다. 그러나, 최근에 새로운 SSD 인터페이스로서 PCI Express 버스 상에서 NVME 컨트롤러가 제안됨에 따라 각 입출력 스트림을 SSD 내부에서 구별할 수 있게 되었고, 이에 따라 입출력 요청들을 스케줄링 할 수 있게 되었다. 본 논문은 NVME 기반 플래시 저장 장치를 위한 플래시 연산 그룹 스케줄링(Flash Operation Group Scheduling)을 제안하고, 가중치에 따라 입출력 스트림별로 비례 지분 대역폭을 제공할 수 있음을 QEMU 기반 시뮬레이션을 통해 보인다.

Keywords

Acknowledgement

Supported by : 한국연구재단

References

  1. NVMHCI Work Group. (2011, Jun. 1). New Promoter Group Formed to Advance NVM Express [Online]. Available: http://www.nvmexpress.org/wp-content/uploads/2013/04/NVMe_Press_Release_New-Promoter-Group_20110601.pdf (downloaded 2015, Sep. 25)
  2. P. Turner. (2011, Sep.). Improving Global Scheduler Decisions [Online]. Available: http://linuxplumbersconf.net/2011/ocw/system/presentations/309/original/LPC_2011_Global_Lag.pdf (downloaded 2015, Sep. 25)
  3. E.H. Nam, B.S.J. Kim, H. Eom, S.L. Min, "Ozone (O3): An Out-of-Order Flash Memory Controller Architecture," IEEE Trans. Computers, Vol. 60, No. 5, pp. 653-666, 2011. https://doi.org/10.1109/TC.2010.209
  4. E. Lee, S. Won, K. Kim, and E. Nam, "NVMe-based Flash Storage Simulator," Proc. of the 41th KIISE Winter Conference, Dec., 2014.
  5. F. Bellard, "QEMU: a Fast and Portable Dynamic Translator," Proc. of the 2005 USENIX Annual Technical Conference, pp. 41-46, 2005.