My Group's Research
We built the NOn-Volatile memory Accelerated (NOVA) file system specifically to expose the performance non-volatile main memory technologies (like Intel’s 3D-XPoint and NVDIMMs). NOVA applies many well-known file system techniques but with an NVMM twist. The resulting file system is faster and easier to use than any other file system available.
Six years before Intel released Optane, we built Onyx, the world’s first publicly demonstrated phase change memory SSD. Onyx and Moneta (Onyx’s cousin) used an FPGA controller and a reengineered software stack to nearly eliminated OS overheads to deliver amazing performance. For several years, Moneta and Onyx were the fastest SSDs (GB-for-GB) in the world.
Non-volatile memory is blazingly fast but tricky to use safely, so we built NV-Heaps to understand the challenges and design solutions. We discovered new kinds of bugs and devised ways to prevent them, so that programmers can build fast, reliable, persistent data structures. Six years later we are still building on the concepts that NV-Heaps pioneered.
Should you trust your SSD with critical data? Will your it keep your secrets? Will it work in space? To answer these questions we measured the performance, reliability, and security of flash memory. Our results changed how governments and companies prevent data breaches and changed how researchers around the world think about flash memory.
SSDs are miniature computers sitting alongside your data. Why shouldn’t they help databases (and other systems) process it? We developed a series of prototype SSDs that integrate complex data processing functions into the SSDs itself. We added support for databases, key-value stores, web search, and more.
How do you make use of silicon you can’t turn on? That is a central question facing processor designers as Moore’s Law seemingly comes to an end. We developed prototype mobile application processor called GreenDroid that leverage “dark silicon” to dramatically reduce energy consumption in smartphones.
Research
Join my Group
News
Publications
Selected Publications
-
NOVA-Fortis: A Fault-Tolerant Non-Volatile Main Memory File System
Proceedings of the 26th International Symposium on Operating Systems Principles (SOSP), 2017. -
NOVA: A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories
14th USENIX Conference on File and Storage Technologies (FAST 16), 2016. -
Willow: A User-Programmable SSD
Proceedings of the 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI '14), 2014. -
Refactor, Reduce, Recycle: Restructuring the I/O Stack for the Future of Storage
Computer 46(8):52-59, 2013. -
From ARIES to MARS:Transaction Support for Next-Generation Solid-State Drives
Proceedings of the 24th International Symposium on Operating Systems Principles (SOSP), 2013. -
Welcome to the Entropics: Boot-Time Entropy in Embedded Devices
IEEE Symposium on Security and Privacy (Oakland 2013). -
Providing Safe, User Space Access to Fast, Solid State Disks
Proceeding of the 17th international conference on Architectural support for programming languages and operating systems, 2012. -
Moneta: A High-Performance Storage Array Architecture for Next-Generation, Non-volatile Memories
Proceedings of the 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture, 2010. -
Onyx: A Prototype Phase-Change Memory Storage Array
Proceedings of the 3rd USENIX conference on Hot topics in storage and file systems, 2011. -
NV-Heaps: Making Persistent Objects Fast and Safe With Next-Generation, Non-Volatile Memories
Proceedings of the sixteenth international conference on Architectural support for programming languages and operating systems, 2011. -
Reliably Erasing Data From Flash-based Solid State Drives
Proceedings of the 9th USENIX conference on File and storage technologies, 2011. -
The GreenDroid Mobile Application Processor: An Architecture for Silicon's Dark Future
Micro, IEEE 31(2):86-95, march-april 2011. -
Conservation cores: reducing the energy of mature computations
Proceedings of the fifteenth edition of ASPLOS on Architectural support for programming languages and operating systems, 2010. -
Characterizing flash memory: anomalies, observations, and applications
Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture, 2009. -
Gordon: An Improved Architecture for Data-Intensive Applications
IEEE Micro 30:121-130, 2010. (IEEE Micro Top Picks).
Join My Group
Grad Students
Training researchers is my main job, and I’m always looking for new graduate students. If you want to build cool systems (and enjoy some sun), please apply and mention me as a potential advisor.
Teaching
In the Spring I teach CSE91: Building Quadcopters. In 10 weeks, students design and build a small quadcopter from scratch, including the hardware and software. The class covers PCB design and manufacturing, the principles of quadcopter operation, sensor filtering and fusion, simple control theory, and embedded systems programming. It’s lots of fun.
In CSE42: Designing and Programming Electronic Devices, students design, build, and program simple wheeled robots while they learn basic programming in CSE11 (Introduction to Computer Science
and Object-Oriented Programming). Working in the Envision Maker Studio, they design the robots using a custom robot design tool, 3D design tools, and their own creativity. Then, solder them together and program them with Arduino.
About/Contact
Bio: Steven Swanson is a professor in the Department of Computer Science and Engineering at the University of California, San Diego and the director of the Non-volatile Systems Laboratory. His research interests include the systems, architecture, security, and reliability issues surrounding heterogeneous memory/storage systems, especially those that incorporate non-volatile, solid-state memories. He has received an NSF CAREER Award, Google Faculty Awards, a Facebook Faculty Award, and been a NetApp Faculty Fellow. He is a co-founder of the Non-Volatile Memories Workshop. In previous lives, he worked on low-power co-processors for irregular applications and building scalable dataflow architectures. He received his Ph.D. from the University of Washington in 2006 and his undergraduate degree from the University of Puget Sound in 1999.
Office: EBU3B 3212 (Directions)
Phone: (858)534-1743
E-mail: swanson@cs.ucsd.edu
CV: Download PDF
Mailing Address:
Computer Science & Engineering
University of California, San Diego
9500 Gilman Drive
EBU3B 3212 MC 0404
La Jolla, CA 92093-0404