OmniCache: collaborative caching for near-storage accelerators
Article No.: 3, Pages 35 - 50
Abstract
We propose OmniCache, a novel caching design for near-storage accelerators that combines near-storage and host memory capabilities to accelerate I/O and data processing. First, OmniCache introduces a "near-cache" approach, maximizing data access to the nearest cache for I/O and processing operations. Second, OmniCache presents collaborative caching for concurrent I/O and data processing by using host and device caches. Third, OmniCache incorporates a dynamic modeldriven offloading support, which actively monitors hardware and software metrics for efficient processing across host and device processors. Finally, OmniCache explores the extensibility for newly-introduced CXL, a memory expansion technology. OmniCache demonstrates significant performance gains of up to 3.24X for I/O workloads and 3.06X for data processing workloads.
References
[1]
CXL Specification. https://www.computeexpresslink.org/download-the-specification.
[2]
Gluster. https://www.gluster.org/.
[3]
Google LevelDB . http://tinyurl.com/osqd7c8.
[4]
jemalloc. https://jemalloc.net/.
[5]
λ-IO GitHub. https://github.com/thustorage/lambda-io#building-and-running.
[6]
memhog - Allocates memory with policy for testing. https://man7.org/linux/man-pages/man8/memhog.8.html.
[7]
rbtree based interval tree as a prio_tree replacement. https://lwn.net/Articles/509994/.
[8]
RocksDB db_bench. https://github.com/facebook/rocksdb/wiki/Benchmarking-tools/.
[9]
FusionFS: Fusing I/O operations using CISCOps in firmware file systems. In 20th USENIX Conference on File and Storage Technologies (FAST 22), pages 297- 312, Santa Clara, CA, February 2022. USENIX Association.
[10]
Ameen Akel, Adrian M. Caulfield, Todor I. Mollov, Rajesh K. Gupta, and Steven Swanson. Onyx: a protoype phase change memory storage array. In Proceedings of the 3rd USENIX conference on Hot topics in storage and file systems, HotStorage'11, Portland, OR, 2011.
[11]
ARM. https://www.arm.com/solutions/storage/computational-storage.
[12]
Ashish Bijlani and Umakishore Ramachandran. Extension framework for file systems in user space. In 2019 USENIX Annual Technical Conference (USENIX ATC 19), pages 121-134, Renton, WA, July 2019. USENIX Association.
[13]
Wei Cao, Yang Liu, Zhushi Cheng, Ning Zheng, Wei Li, Wenjie Wu, Linqiang Ouyang, Peng Wang, Yijing Wang, Ray Kuan, Zhenjun Liu, Feng Zhu, and Tong Zhang. POLARDB Meets Computational Storage: Efficiently Support Analytical Workloads in Cloud-Native Relational Database. In 18th USENIX Conference on File and Storage Technologies (FAST 20), pages 29-41, Santa Clara, CA, February 2020. USENIX Association.
[14]
Brian F Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. Benchmarking cloud serving systems with ycsb. In Proceedings of the 1st ACM symposium on Cloud computing, pages 143-154, 2010.
[15]
Jaeyoung Do, Victor C. Ferreira, Hossein Bobarshad, Mahdi Torabzadehkashi, Siavash Rezaei, Ali Heydarigorji, Diego Souza, Brunno F. Goldstein, Leandro Santiago, Min Soo Kim, Priscila M. V. Lima, Felipe M. G. Franca, and Vladimir Alves. Cost-effective, energy-efficient, and scalable storage computing for large-scale ai applications. ACM Trans. Storage, 16(4), October 2020.
[16]
Jaeyoung Do, Yang-Suk Kee, Jignesh M. Patel, Chanik Park, Kwanghyun Park, and David J. DeWitt. Query Processing on Smart SSDs: Opportunities and Challenges. In Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data, SIGMOD '13, pages 1221-1230, New York, NY, USA, 2013. ACM.
[17]
Junsu Im, Jinwook Bae, Chanwoo Chung, Arvind, and Sungjin Lee. PinK: High-speed In-storage Key-value Store with Bounded Tails. In 2020 USENIX Annual Technical Conference (USENIX ATC 20), pages 173- 187. USENIX Association, July 2020.
[18]
Suhas Jayaram Subramanya, Fnu Devvrit, Harsha Vardhan Simhadri, Ravishankar Krishnawamy, and Rohan Kadekodi. Diskann: Fast accurate billion-point nearest neighbor search on a single node. Advances in Neural Information Processing Systems, 32, 2019.
[19]
Myoungsoo Jung. Hello bytes, bye blocks: Pcie storage meets compute express link for memory expansion (cxl-ssd). In Proceedings of the 14th ACM Workshop on Hot Topics in Storage and File Systems, pages 45-51, 2022.
[20]
Myoungsoo Jung. Hello bytes, bye blocks: Pcie storage meets compute express link for memory expansion (cxl-ssd). In Proceedings of the 14th ACM Workshop on Hot Topics in Storage and File Systems, HotStorage '22, page 45-51, New York, NY, USA, 2022. Association for Computing Machinery.
[21]
Sudarsun Kannan, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau, Yuangang Wang, Jun Xu, and Gopinath Palani. Designing a True Direct-access File System with DevFS. In Proceedings of the 16th USENIX Conference on File and Storage Technologies, FAST'18, pages 241- 255, Berkeley, CA, USA, 2018. USENIX Association.
[22]
Sudarsun Kannan, Nitish Bhat, Ada Gavrilovska, Andrea Arpaci-Dusseau, and Remzi Arpaci-Dusseau. Redesigning LSMs for Nonvolatile Memory with NoveLSM. In 2018 USENIX Annual Technical Conference (USENIX ATC 18), pages 993-1005, Boston, MA, July 2018. USENIX Association.
[23]
Hyojun Kim, Sangeetha Seshadri, Clement L Dickey, and Lawrence Chiu. Evaluating phase change memory for enterprise storage systems: A study of caching and tiering approaches. In 12th USENIX Conference on File and Storage Technologies (FAST 14), pages 33-45, 2014.
[24]
Jinhyung Koo, Junsu Im, Jooyoung Song, Juhyung Park, Eunji Lee, Bryan S. Kim, and Sungjin Lee. Modernizing file system through in-storage indexing. In 15th USENIX Symposium on Operating Systems Design and Implementation (OSDI 21), pages 75-92. USENIX Association, July 2021.
[25]
Youngjin Kwon, Henrique Fingler, Tyler Hunt, Simon Peter, Emmett Witchel, and Thomas Anderson. Strata: A Cross Media File System. In Proceedings of the 26th Symposium on Operating Systems Principles, SOSP '17, 2017.
[26]
Huaicheng Li, Daniel S. Berger, Lisa Hsu, Daniel Ernst, Pantea Zardoshti, Stanko Novakovic, Monish Shah, Samir Rajadnya, Scott Lee, Ishwar Agarwal, Mark D. Hill, Marcus Fontoura, and Ricardo Bianchini. Pond: Cxl-based memory pooling systems for cloud platforms. ASPLOS 2023, page 574-587, New York, NY, USA, 2023. Association for Computing Machinery.
[27]
Jing Liu, Anthony Rebello, Yifan Dai, Chenhao Ye, Sudarsun Kannan, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. Scale and performance in a filesystem semi-microkernel. In Proceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles, SOSP '21, page 819-835, New York, NY, USA, 2021. Association for Computing Machinery.
[28]
NVIDIA Mellanox BlueField DPU. https://www.mellanox.com/files/doc-2020/pb-bluefield-smart-nic.pdf.
[29]
Simon Peter, Jialin Li, Irene Zhang, Dan R. K. Ports, Doug Woos, Arvind Krishnamurthy, Thomas Anderson, and Timothy Roscoe. Arrakis: The Operating System is the Control Plane. In Proceedings of the 11th USENIX Conference on Operating Systems Design and Implementation, OSDI'14, Broomfield, CO, 2014.
[30]
Nicholas Rauth. A network filesystem client to connect to SSH servers. https://github.com/libfuse/sshfs.
[31]
Yujie Ren, Changwoo Min, and Sudarsun Kannan. {CrossFS}: A cross-layered {Direct-Access} file system. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 20), pages 137-154, 2020.
[32]
Erik Riedel, Garth A. Gibson, and Christos Faloutsos. Active storage for large-scale data mining and multimedia. In Proceedings of the 24rd International Conference on Very Large Data Bases, VLDB '98, page 62-73, San Francisco, CA, USA, 1998. Morgan Kaufmann Publishers Inc.
[33]
Zhenyuan Ruan, Tong He, and Jason Cong. INSIDER: Designing In-Storage Computing System for Emerging High-Performance Drive. In 2019 USENIX Annual Technical Conference (USENIX ATC 19), pages 379- 394, Renton, WA, July 2019. USENIX Association.
[34]
Samsung. Samsung Key Value SSD. https://www.samsung.com/semiconductor/global.semi.staticSamsung_Key_Value_SSD_enables_High_Performance_Scaling-0.pdf.
[35]
ScaleFlux. https://scaleflux.com/.
[36]
Seagate RISC-V storage solution. https://www.seagate.com/innovation/risc-v/.
[37]
Yasas Seneviratne, Korakit Seemakhupt, Sihang Liu, and Samira Khan. Nearpm: A near-data processing system for storage-class applications. In Proceedings of the Eighteenth European Conference on Computer Systems, EuroSys '23, page 751-767, New York, NY, USA, 2023. Association for Computing Machinery.
[38]
SNIA. SNIA Computational Storage Technical Work Group (TWG).
[39]
Mohammadreza Soltaniyeh, Veronica Lagrange Moutinho Dos Reis, Matt Bryson, Xuebin Yao, Richard P. Martin, and Santosh Nagarakatte. Nearstorage processing for solid state drive based recommendation inference with smartssds®. In Proceedings of the 2022 ACM/SPEC on International Conference on Performance Engineering, ICPE '22, page 177-186, New York, NY, USA, 2022. Association for Computing Machinery.
[40]
Haris Volos, Sanketh Nalli, Sankarlingam Panneerselvam, Venkatanathan Varadarajan, Prashant Saxena, and Michael M. Swift. Aerie: Flexible File-system Interfaces to Storage-class Memory. In Proceedings of the Ninth European Conference on Computer Systems, EuroSys '14, Amsterdam, The Netherlands, 2014.
[41]
Matthew Wilcox and Ross Zwisler. Linux DAX. https://www.kernel.org/doc/Documentation/filesystems/dax.txt.
[42]
Mark Wilkening, Udit Gupta, Samuel Hsia, Caroline Trippel, Carole-Jean Wu, David Brooks, and Gu-Yeon Wei. Recssd: near data processing for solid state drive based recommendation inference. In Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, pages 717-729, 2021.
[43]
Jian Xu and Steven Swanson. NOVA: A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories. In Proceedings of the 14th Usenix Conference on File and Storage Technologies, FAST'16, Santa Clara, CA, 2016.
[44]
Zhe Yang, Youyou Lu, Xiaojian Liao, Youmin Chen, Junru Li, Siyu He, and Jiwu Shu. λ-io: A unified IO stack for computational storage. In 21st USENIX Conference on File and Storage Technologies (FAST 23), pages 347-362, Santa Clara, CA, February 2023. USENIX Association.
[45]
Xinjing Zhou, Joy Arulraj, Andrew Pavlo, and David Cohen. Spitfire: A three-tier buffer manager for volatile and non-volatile memory. In Proceedings of the 2021 International Conference on Management of Data, SIGMOD '21, pages 2195-2207, New York, NY, USA, 2021. Association for Computing Machinery.
Index Terms
- OmniCache: collaborative caching for near-storage accelerators
Index terms have been assigned to the content through auto-classification.
Recommendations
TLB Improvements for Chip Multiprocessors: Inter-Core Cooperative Prefetchers and Shared Last-Level TLBs
Translation Lookaside Buffers (TLBs) are critical to overall system performance. Much past research has addressed uniprocessor TLBs, lowering access times and miss rates. However, as Chip MultiProcessors (CMPs) become ubiquitous, TLB design and ...
High performance cache replacement using re-reference interval prediction (RRIP)
ISCA '10Practical cache replacement policies attempt to emulate optimal replacement by predicting the re-reference interval of a cache block. The commonly used LRU replacement policy always predicts a near-immediate re-reference interval on cache hits and ...
Comments
Please enable JavaScript to view thecomments powered by Disqus.Information & Contributors
Information
Published In
Copyright © 2024 The USENIX Association.
Sponsors
- FUTUREWEI
- NSF
- Google Inc.
- IBM
- Samsung
Publisher
USENIX Association
United States
Publication History
Published: 11 March 2024
Qualifiers
- Research-article
- Research
- Refereed limited
Contributors
Other Metrics
Bibliometrics & Citations
Bibliometrics
Article Metrics
- 0Total Citations
- 0Total Downloads
- Downloads (Last 12 months)0
- Downloads (Last 6 weeks)0
Reflects downloads up to 13 Dec 2024