PMNet: In-Network Data Persistence
PMNet is a system that accelerates update requests by logging update requests in network device.
If you find PMNet useful in your research, please cite:
Korakit Seemakhupt, Sihang Liu, Yasas Senevirathne, Muhammad Shahbaz and Samira Khan
PMNet: In-Network Data Persistence The International Symposium on Computer Architecture (ISCA), 2021
BibTex
``` @inproceedings{seemakhupt2021pmnet, title={PMNet: In-Network Data Persistence}, author={Seemakhupt, Korakit and Liu, Sihang and Senevirathne, Yasas and Shahbaz, Muhammad and Khan, Samira}, booktitle={2021 ACM/IEEE 48th Annual International Symposium on Computer Architecture (ISCA)}, year={2021} } ```
Testing PMNet
Tested Environment
- Xilinx VCU118 FPGA
- Server Machine: Intel Cascade Lake, 128GiB DRAM, 256GiB DCPMM, Mellanox CX353A NIC, Ubuntu 20.04
- Client Machine: Intel Haswell, 128GiB DRAM, Mellanox CX353A NIC, Ubuntu 20.04
- 10 Gbit/s ethernet switches as ToR switches
Tested Topology
Servers <—> ToR switch - FPGA <—> ToR switch <—> Clients
Running the test
PMNet implementation consists of 2 main parts: PMNet hardware and PMNet software
PMNet Hardware
There are 2 main parts of PMNet hardware implementation.
- Packet processing (available at PMNet_release/PMNet_P4/)
- Datapath in FPGA (available at PMNet_release/PMNet_Vivado/)
PMNet Software
Workloads
Workloads used for PMNet evaluation.
Available Here: PMNet_release/workloads/