Hello! I'm Bryan S. Kim, an assistant professor in the Department of Electrical Engineering & Computer Science at Syracuse University. Prior Syracuse, I was a postdoctoral researcher at Seoul National University, and a manager at SK telecom. I received my Ph.D. and M.S. in Computer Science & Engineering from Seoul National University, and my B.S. in Electrical Engineering Computer Science from the University of California, Berkeley.
I am broadly interested in computer systems and particularly focused on data storage systems. After all, we are living in an Age of Big Data, and it is increasingly becoming important how we efficiently handle and manage data for data-centric applications.
E-mail address: bkim01 at syr . edu
Aug. 2021: Shao-Peng Yang joins the group. Welcome!
May 2021: "SpartanSSD: a Reliable SSD under Capacitance Constraints" is accepted to appear in ISLPED 2021.
Mar. 2021: Samsung awards the proposal "Dynamically-Provisioned SSDs for Container-Native Storage" through the ASIC consortium. Thank you, Samsung and ASIC!
Mar. 2021: "Modernizing File System through In-Storage Indexing" is accepted to appear in OSDI 2021.
Feb. 2021: "KV-SSD: What Is It Good For?" is accepted to appear in DAC 2021.
Aug. 2020: "JellyFish: A Fast Skip List with MVCC" is accepted to appear in Middleware 2020.
Aug. 2020: NSF awards the proposal, "CPR for Flash-Based Storage Systems". Thank you, NSF!
Aug. 2020: Ziyang Jiao, Omkar Desai, and Xiangqun Zhang joins the group. Welcome!
Capacity-variant storage systems
We argue for a capacity-variance abstraction designed for flash-based solid-state drives (SSDs). In the current capacity-invariant interface where the storage device exports a fixed capacity throughout its lifetime, an SSD has no other choice but to trade performance for reliability as it wears out. Instead, this research direction rethinks the existing storage interface from a holistic perspective by exploiting the tradeoffs among capacity, performance, and reliability (CPR). Through a flexible capacity-variance interface, an SSD can maintain performance while gracefully reducing its number of exported blocks. This further allows us to explore building a flash-based storage system that is performant, reliable, and efficient under heterogeneity.
Self-learning storage systems
We argue for enhanced autonomy in the components of the storage stack. The separation of policy and mechanism is a tried-and-true system design philosophy. However, today's storage stack exhibit many inefficiencies where the policy decisions are made sub-optimally without the details of the underlying layer, and exported mechanisms are oblivious of the expected use cases from the layer above. This research direction aims to imbue intelligence to the storage devices so that they can self-learn, self-configure, and self-manage. Our research vision of autonomic storage aspires to address many of the shortcomings of using the current one-size-fits-all approach prevalent in today's storage stack.
Reimagining the storage stack with key-value devices
We explore the design of a storage stack using key-value devices instead of block devices. Modern data-intensive applications assume a storage stack of user-level databases and key-value stores, built on top of file systems, on top of block devices. While this layering approach ensures backward compatibility and makes it easy to deploy new systems, the many levels of abstraction found are a source of inefficiency. In this research direction, we reimagine the storage stack using key-value devices that export a key-value interface instead of the traditional block interface. This not only allows for more efficient and streamlined designs, but also has long-term implications for how future file systems and databases are built upon a new I/O interface.
[DAC'21] Manoj Pravakar Saha, Adnan Maruf, Bryan S. Kim, and Janki Bhimani. KV-SSD: What is it Good For? To appear in DAC, 2021
[ISLPED'21] Hyeongyu Lee, Juwon Lee, Minwook Kim, Donghwa Shin, Sungjin Lee, Bryan S. Kim, Eunji Lee and Sang Lyul Min. SpartanSSD: a Reliable SSD under Capacitance Constraints. In ACM/IEEE ISLPED, 2021
[OSDI'21] Jinhyung Koo, Junsu Im, Jooyoung Song, Juhyung Park,Eunji Lee, Bryan S. Kim, and Sungjin Lee. Modernizing File System through In-Storage Indexing. In USENIX OSDI, 2021
[Middleware'20] Jeseong Yeon, Leeju Kim, Youil Han, Hyeon Gyu Lee, Eunji Lee, and Bryan S. Kim. JellyFish: A Fast Skip List with MVCC. In ACM/IFIP Middleware Conference, 2020
[POMACS'19] Youil Han, Bryan S. Kim, Jeseong Yeon, Sungjin Lee, and Eunji Lee. TeksDB: Weaving Data Structures for a High-Performance Key-Value Stores. In Proceedings of the ACM on Measurement and Analysis of Computing Systems , 2019
[HotOS'19] Bryan S. Kim, Eunji Lee, Sungjin Lee, Sang Lyul Min. CPR for SSDs. In ACM SIGOPS Workshop on Hot Topics in Operating Systems, 2019
[FAST'19] Bryan S. Kim, Jongmoo Choi, and Sang Lyul Min. Design Tradeoffs for SSD Reliability. In USENIX Conference on File and Storage Techologies, 2019
[APSys'18] Geonhee Lee, Hyeon Gyu Lee, Juwon Lee, Bryan S. Kim and Sang Lyul Min. An Empirical Study on NVM-based Block I/O Caches. In ACM SIGOPS Asia-Pacific Workshop on Systems, 2018
[ATC'18] Bryan S. Kim, Hyun Suk Yang, and Sang Lyul Min. AutoSSD: an Autonomic SSD Architecture. In USENIX Annual Technical Conference, 2018
[HotStorage'18] Bryan S. Kim. Utilitarian Performance Isolation in Shared SSDs. In USENIX Workshop on Hot Topics in Storage and File Systems, 2018
[NVMSA'17] Bryan S. Kim, Yonggun Lee, and Sang Lyul Min. Framework for Efficient and Flexible Scheduling of Flash Memory Operations. In IEEE Non-Volatile Memory Systems and Applications, 2017
[RTAS'17] Bryan S. Kim and Sang Lyul Min. QoS-aware Flash Memory Controller. In IEEE Real-Time and Embedded Technology and Applications Symposium, 2017
CIS341: Computer Organization & Programming Systems (SP20, SP21)
CIS700/CIS791: Storage Systems for Big Data (FA19, FA20)
[NVMSA'21] Program committee for IEEE Non-Volatile Memory Systems and Applications Symposium
[TCAD'19, TCAD'20] Reviewer for IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
[DAC'19, DAC'20, DAC'21] Program committee for Design Automation Conference
Shao-Peng Yang