The Non-volatile Systems

Laboratory

UCSD CSE Computer Architecture
Flash

Headlines

WANTED:  Post-docs!

The NVSL is actively recruiting post docs to work on a variety of non-volatile memories-related projects ranging from systems, to programming languages, to architecture, to embedded systems.  If you are interested please drop me a line.

UCSD Non-volatile Memories Workshop

As a joint effort with the Center for Magnetic Recording Research (CMRR) the NVSL is putting on the first UCSD Non-volatile Memories Workshop.  It will be on April 12-13th, and will cover a wide range of issues related to non-volatile memory.  More information is available here.

About the NVSL

The Non-volatile Systems Laboratory (NVSL) was founded in 2008 and focuses on developing hardware and software prototypes to understand the hardware, software, security, and reliability implications of non-volatile, solid-state memories.  These memories are poised to fundamentally alter the role of persistent state in computing systems:
  • Operating Systems: Their increased performance (between 1,000x and 1,000,000x faster than disk) gives us the chance fundamentally rethink how operating systems manage and use non-volatile state
  • Green Computing: Their reduced power consumption relative to both disk and DRAM mean they will play a key role in enabling "green" and "energy porportional" computing systems.
  • Universal memory: Advanced non-volatile memories can fullfill the promise of a "universal memory," playing the part of both DRAM and disk.
  • Data-centric Computing: Their enormous density (relative to DRAM) and speed (relative to disk) make them an essential component in emerging high-perfomance, data-centric computing systems.
At the same time, these technologies present difficult (and exciting!) challenges:
  • Reliability: Many of the technologies have durability and data integrity limitations and require careful engineering to ensure system-level reliability.
  • Security: The complexity of flash-based, solid-state disks (e.g., in cell phones and palm tops) raise security concerns because "deleted" data can easily be retreived.
  • Error detection: Solid-state memories suffer from a range of failure modes and require aggressive error correction and detection mechanisms to ensure data integrity.
Our approach to all of these problems is to build hardware and software systems ranging from embedded storage arrays to flash-enabled high-performance clusters that allow us to characterize the challenges and test solution on "real world" systems.  We work with researchers at the Center for Magnetic Recording Research, the San Diego Super Computing Center, and within the Computer Science and Engineering Departement to bring a  wide range of expertise to bear on each of these issues.
Characterizing Flash
Ming
Characterizing Flash
Prototypes
ZarkovI

People

Faculty
Steven Swanson
Rajesh Gupta
Steven Swanson Rajesh Gupta
  Students
Laura Grupp
Adrian Caulfield
Joel Coburn
Arup De
Ameen Akel
Laura Grupp Adrian Caulfield Joel Coburn Arup De Ameen Akel


Publications

Grupp, L., Caulfield, A.M., Coburn, J., Yaakobi, E., Swanson, S., Siegel, P., "Characterizing Flash Memory: Anomalies, Observations, and Applications" To appear in MICRO'09.  (pdf) (Flash memory summit slides) (More information about our flash characterization project is available here.)

Caulfield, A. M., Grupp, L. M., and Swanson, S. 2009. Gordon: using flash memory to build fast, power-efficient clusters for data-intensive applications. In Proceeding of the 14th international Conference on Architectural Support For Programming Languages and Operating Systems. ASPLOS '09 (pdf) (Selected for IEEE Micro "Top Picks" 2009)

Sponsors and Partners

 
SDSC Calit2
Numonyx
CMRR

dod
DMEA
National Science Foundation (NSF)

Tools and Prototypes

To understand the role that solid state will play in future systems, we are building a series of hardware prototypes.  These include the Zarkov I SSDs (left), our multi-technology test bed (middle) and our flash characterization system (right).

ZarkovI NVSL cluster Ming
Zarkov I: SSD Prototype
Prototyping cluster: Seven BEE3 FPGA prototyping systems attached via PCIe to seven servers, each equipped with 72GB of RAM, SSD and HD-based RAID arrays, and FusionIO SSDs
Ming the Merciless:  Flash characterization board