LightProbe - 200G Remote DMA for GPU FPGA Data Transfers
Real-time ultrasound imaging produces a huge amount of raw sensor data that has to be processed in real-time.
In current state-of-the-art systems the raw sensor data stream from the ultrasound receive frontend exceeds 100Gb/s. Due to this tremendous amount of raw data, FPGA-based processing architectures are used today. However, these architectures are not very flexible to program, which makes it time-consuming and costly to bring new imaging algorithms from research into products such that patients can benefit.
To overcome this limitation, GPU-based processing architectures are a viable alternative. However, bringing the raw data from the ultrasound frontend (connected over PCIe) into to the GPU is not trivial: Conventional CPU-managed DMA data-transfers will completely load the CPU only to sustain the high data transfer rate. The conceptual solution to this problem are Remote-Direct-Memory-Access (RDMA) transfers, where the setup and management of the DMA transfers are no longer under to control of the host CPU but managed by one of the PCIe devices.
The goal of this project is to evaluate and profile existing RDMA implementation (Nvidia, Xilinx, Mellanox), and then select/adapt/extend a solution to be used in our high-performance GPU-based ultrasound imaging system.
The main goal of the project is to design a powerful RDMA subsystem that is able to transfer data from our ultrasound frontend into the GPU at very high rates (>100Gb/s).
Your tasks are
- Evaluate existing RDMA solutions
- Detailed profiling of selected existing solutions
- Implementation of the RDMA subsystem for our ultrasound system
- VLSI I is good to have, but not required.
- Looking for Interested Students
- Supervision: Andrea Cossettini
- 60% System design
- 40% Programming and Testing