Skip to content

Loofort/udp_pps_speed_test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

Purpose of test

I wrote this test to compare performance on linux network stack between GO and C. In folder c_send_recv you can find highly optimized udp sender and receiver written in C, this code was borrowed from this project https://blog.cloudflare.com/how-to-receive-a-million-packets/ and used as beau ideal that GOlang implementation wants to achieve.

Go implements several methods to send UDP packets. There is a test for each - see usage in main.go. Different servers show different results so you should test your server by yourself. But in general:

  • the UDPConn.Write() is the slowest, on my box it almost 2 times slower than C sender.
  • the sendmmsg syscall implementation is fastest and acts the same perfomance as C (even 5% faster on my box)

About

compare perfomance for GO and C udp packet per second speed (linux only)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published