{"title":"在虚拟多核服务器中扩展I/O: 10年内I/O的数量以及如何实现","authors":"A. Bilas","doi":"10.1145/2287056.2287058","DOIUrl":null,"url":null,"abstract":"With emerging storage device technologies, such as solid-state disks (SSDs), servers that are capable of millions of I/O operations are expected to become commonplace. This trend shifts the bottleneck from I/O devices to the I/O path. Recently, industry has started to also shift focus from merely using faster I/O devices, such as SSDs instead of disks, to innovations in the server I/O path for achieving scale-out for big data applications. Today's systems software in the I/O path exhibits high overheads and poor scaling when increasing the number of cores and storage devices; shared structures, replication of functionality, synchronization requirements, and workload interference are on the way of supporting current and future I/O intensive applications that end-up consuming many times more cycles to perform each I/O operation when the number of cores increases. In this talk, by looking at the cycles used per I/O operation, I will first characterize application requirements, evaluate improvements, and project future needs. Early results show that today's I/O stack does not scale beyond 4-6 cores and that it exhibits high overheads, especially in virtualized environments. Then I will focus on partitioning the I/O stack on modern multi-core servers to improve scalability and reduce interference and I will discuss our experimental prototype that is currently being built and is able to support commercial grade workloads. This work is conducted in the context of the IOLANES EU FP7 Project (www.iolanes.eu).","PeriodicalId":176127,"journal":{"name":"Virtualization Technologies in Distributed Computing","volume":"49 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":"{\"title\":\"Scaling I/O in virtualized multicore servers: how much I/O in 10 years and how to get there\",\"authors\":\"A. Bilas\",\"doi\":\"10.1145/2287056.2287058\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"With emerging storage device technologies, such as solid-state disks (SSDs), servers that are capable of millions of I/O operations are expected to become commonplace. This trend shifts the bottleneck from I/O devices to the I/O path. Recently, industry has started to also shift focus from merely using faster I/O devices, such as SSDs instead of disks, to innovations in the server I/O path for achieving scale-out for big data applications. Today's systems software in the I/O path exhibits high overheads and poor scaling when increasing the number of cores and storage devices; shared structures, replication of functionality, synchronization requirements, and workload interference are on the way of supporting current and future I/O intensive applications that end-up consuming many times more cycles to perform each I/O operation when the number of cores increases. In this talk, by looking at the cycles used per I/O operation, I will first characterize application requirements, evaluate improvements, and project future needs. Early results show that today's I/O stack does not scale beyond 4-6 cores and that it exhibits high overheads, especially in virtualized environments. Then I will focus on partitioning the I/O stack on modern multi-core servers to improve scalability and reduce interference and I will discuss our experimental prototype that is currently being built and is able to support commercial grade workloads. This work is conducted in the context of the IOLANES EU FP7 Project (www.iolanes.eu).\",\"PeriodicalId\":176127,\"journal\":{\"name\":\"Virtualization Technologies in Distributed Computing\",\"volume\":\"49 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2012-06-18\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"5\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Virtualization Technologies in Distributed Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2287056.2287058\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Virtualization Technologies in Distributed Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2287056.2287058","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Scaling I/O in virtualized multicore servers: how much I/O in 10 years and how to get there
With emerging storage device technologies, such as solid-state disks (SSDs), servers that are capable of millions of I/O operations are expected to become commonplace. This trend shifts the bottleneck from I/O devices to the I/O path. Recently, industry has started to also shift focus from merely using faster I/O devices, such as SSDs instead of disks, to innovations in the server I/O path for achieving scale-out for big data applications. Today's systems software in the I/O path exhibits high overheads and poor scaling when increasing the number of cores and storage devices; shared structures, replication of functionality, synchronization requirements, and workload interference are on the way of supporting current and future I/O intensive applications that end-up consuming many times more cycles to perform each I/O operation when the number of cores increases. In this talk, by looking at the cycles used per I/O operation, I will first characterize application requirements, evaluate improvements, and project future needs. Early results show that today's I/O stack does not scale beyond 4-6 cores and that it exhibits high overheads, especially in virtualized environments. Then I will focus on partitioning the I/O stack on modern multi-core servers to improve scalability and reduce interference and I will discuss our experimental prototype that is currently being built and is able to support commercial grade workloads. This work is conducted in the context of the IOLANES EU FP7 Project (www.iolanes.eu).