Date: July 14, 2022 | 3.00 p.m. (GMT+1)
Speaker: Rohan Kadekodi, UT Austin
Moderator: Tânia Esteves, INESC TEC & University of Minho
Persistent Memory (PM) refers to storage class memory that offers non-volatility, low latency and high bandwidth. A number of application can benefit from PM due to its unique characteristics. Legacy applications that are built for HDDs and SSDs use POSIX system-calls to access data on PM. Newer applications designed specifically to be used on PM access data by memory mapping files and performing loads/stores from user-space to PM-resident addresses.
First, we present SplitFS, a file system for PM aimed at accelerating POSIX system-call applications. SplitFS presents a novel split of responsibilities between a user-space library file system and an existing kernel PM file system. The user-space library file system handles data operations by intercepting POSIX calls, memory-mapping the underlying files, and serving the reads and writes using processor loads and stores. Metadata operations are handled by the kernel PM file system (ext4 DAX). In this way, SplitFS reduces software overhead significantly compared to the state-of-the-art POSIX file system atop PM.
Next, we introduce WineFS, a novel hugepage-aware PM file system that is aimed at accelerating memory-mapped applications. WineFS uses an alignment-aware allocation policy that allocated huge page-aligned extents for the memory-mapped files, while using up fragmented unaligned holes for the small files. WineFS uses a suitable on-PM layout and per-CPU journaling to ensure high scalability while avoiding free-space fragmentation and preserving huge pages (and thus, high performance) with age.
About the speaker:
Rohan Kadekodi is a PhD student working with Prof. Vijay Chidambaram. He works on building systems software for Persistent Memory. In particular, he has built file systems for persistent memory that are aimed at accelerating legacy applications as well as newer applications that are developed for persistent memory.
About the moderator:
Tânia Esteves is a 4th Ph.D. student in the Doctoral Program of Informatics at the University of Minho, in Portugal. She obtained her Master’s degree in Informatics Engineering in 2018, with her Master’s thesis focusing on configurable and secure storage systems.
She is currently a research assistant at HASLab, a laboratory of INESC TEC, and her research focuses on the monitoring of distributed systems, with emphasis on the analysis of the data flow.
The BigHPC Project is co-financed by the European Regional Development Fund through the Operational Program for Competitiveness and Internationalisation – COMPETE 2020, the Lisbon Portugal Regional Operational Program – Lisboa 2020, and the Portuguese Foundation for Science and Technology – FCT under UT Austin Portugal.