Skip to content

AMD TCPDirect ultra low latency kernel bypass TCP and UDP implementation for AMD Solarflare network adapters, to be used with corresponding versions of Onload®️ at https://github.com/Xilinx-CNS/onload. The stable branch is currently `v8_1`.

Notifications You must be signed in to change notification settings

ibeecraft-amd/tcpdirect

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

How to build

Dependencies

Required packages might vary from system to system. Below are the packages it was once required to install on a clean DUT CentOS 8 installation

1. libstdc++

sudo yum install libstdc++-static

2. Onload repository

It is necessary to have a copy of the Onload source code

git clone git@github.com:Xilinx/onload.git

Building

Execute the following command from the root of the repository:

export ONLOAD_TREE={path to the checked out onload repository}
make

How to run unit tests

Dependencies

In addition to the dependencies specified in the build section unit tests would require following dependencies in place:

1. perl-Test-Harness

$ sudo yum install perl-Test-Harness

Running tests

Execute the following commands from the root of the repository:

$ export ONLOAD_TREE={path to the checked out onload repository}
$ export ZF_DEVEL=1
$ make clean test

Note: sudo access will be required to run tests

Common Problems

  1. If you get the problem 'Failed to allocate huge page for emu, are huge pages available?'
$ sudo sysctl vm.nr_hugepages=4096

Footnotes

# SPDX-License-Identifier: MIT
# SPDX-FileCopyrightText: (c) 2020-2024 Advanced Micro Devices, Inc.
#
# Internal documentation

About

AMD TCPDirect ultra low latency kernel bypass TCP and UDP implementation for AMD Solarflare network adapters, to be used with corresponding versions of Onload®️ at https://github.com/Xilinx-CNS/onload. The stable branch is currently `v8_1`.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 89.5%
  • C++ 4.9%
  • Shell 2.3%
  • Makefile 1.6%
  • Groovy 0.8%
  • TeX 0.6%
  • Other 0.3%