Summarizer: Trading Communication with Computing Near Storage

Summarizer: Trading Communication with Computing Near Storage
复制标题

DOI:
10.1145/3123939.3124553
复制
发表时间:
2017-10
期刊:
2017 50th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO)
影响因子:
--
通讯作者:
Gunjae Koo;Kiran Kumar Matam;Te I;Krishnagiri Narra;Jing Li;Hung-Wei Tseng;S. Swanson;M. Annavaram
Gunjae Koo;Kiran Kumar Matam;Te I;Krishnagiri Narra;Jing Li;Hung-Wei Tseng;S. Swanson;M. Annavaram
中科院分区:
其他
文献类型:
--
作者:
Gunjae Koo;Kiran Kumar Matam;Te I;Krishnagiri Narra;Jing Li;Hung-Wei Tseng;S. Swanson;M. Annavaram

文献摘要

被引文献

相似文献

Modern data center solid state drives (SSDs) integrate multiple general-purpose embedded cores to manage ash translation layer, garbage collection, wear-leveling, and etc., to improve the performance and the reliability of SSDs. As the performance of these cores steadily improves there are opportunities to repurpose these cores to perform application driven computations on stored data, with the aim of reducing the communication between the host processor and the SSD. Reducing host-SSD bandwidth demand cuts down the I/O time which is a bottleneck for many applications operating on large data sets. However, the embedded core performance is still significantly lower than the host processor, as generally wimpy embedded cores are used within SSD for cost effective reasons. So there is a trade-o between the computation overhead associated with near SSD processing and the reduction in communication overhead to the host system. In this work, we design a set of application programming interfaces (APIs) that can be used by the host application to offload a data intensive task to the SSD processor. We describe how these APIs can be implemented by simple modifications to the existing Non-Volatile Memory Express (NVMe) command interface between the host and the SSD processor. We then quantify the computation versus communication tradeoffs for near storage computing using applications from two important domains, namely data analytics and data integration. Using a fully functional SSD evaluation platform we perform design space exploration of our proposed approach by varying the bandwidth and computation capabilities of the SSD processor. We evaluate static and dynamic approaches for dividing the work between the host and SSD processor, and show that our design may improve the performance by up to 20% when compared to processing at the host processor only, and 6when compared to processing at the SSD processor only. CCS CONCEPTS • Computer systems organization → Secondary storage organization; Distributed architectures; Firmware;