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

jfeather-amd/tcpdirect

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 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

Packages

No packages published

Languages

  • C 89.4%
  • C++ 4.9%
  • Shell 2.5%
  • Makefile 1.6%
  • Groovy 0.7%
  • TeX 0.6%
  • Other 0.3%