Skip to content

Latest commit

 

History

History
51 lines (38 loc) · 1.82 KB

index.md

File metadata and controls

51 lines (38 loc) · 1.82 KB

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

  1. Xilinx VCU118 FPGA
  2. Server Machine: Intel Cascade Lake, 128GiB DRAM, 256GiB DCPMM, Mellanox CX353A NIC, Ubuntu 20.04
  3. Client Machine: Intel Haswell, 128GiB DRAM, Mellanox CX353A NIC, Ubuntu 20.04
  4. 10 Gbit/s ethernet switches as ToR switches

Tested Topology

Servers <---> ToR switch - FPGA <---> ToR switch <---> Clients

Running the test

  1. Build the hardware and program the bitstream (Hardware)
  2. Build and run the workloads (Workloads)

PMNet implementation consists of 2 main parts: PMNet hardware and PMNet software

PMNet Hardware

There are 2 main parts of PMNet hardware implementation.

  1. Packet processing (available at PMNet_release/PMNet_P4/)
  2. Datapath in FPGA (available at PMNet_release/PMNet_Vivado/)

PMNet Software

Workloads

Workloads used for PMNet evaluation.
Available Here: PMNet_release/workloads/