Computational Storage and Case study af SmartSSD

FPGA Programming for storage acceleration
Students: Patrick Louis Gullik Corell & Jakob Steen Mikkelsen
Supervisor: Philippe Bonnet
Level: BSc, Semester: Spring 2020
Tags: SSDs, FPGA, Computational Storage

One of the primary bottlenecks in modern day database systems, in terms of data manipulation, is the transfer distance between the CPU and the storage. One of the proposed solutions to this problem is computational storage, which is a series of architectures where computing happens closer to flash storage and thereby bypasses CPU and memory limitations. In our project we will more specifically look into the Samsung SmartSSD, which is a form of computational storage.

The goal set for this project is to design and implement a program which uses the SmartSSD, and demonstrate its usage with regards to data manipulation.

In this project we have the following intended learning outcomes: 1. Analyze existing architectures for computational storage, including the SmartSSD 2. Describe the ecosystem for programming the FPGA embedded in the SmartSSD 3. Discuss the classes of programs that are well-suited for SmartSSD 4. Design, implement and evaluate a program well-suited for SmartSSD