NUMA Optimizations in the FreeBSD Network Stack

  Рет қаралды 9,452

EuroBSDcon

EuroBSDcon

Күн бұрын

I will discuss optimizations to keep network connections and their resources local to NUMA domains. These changes include:
Allocating NUMA local memory to back files sent via sendfile(9).
Allocating NUMA local memory for Kernel TLS crypto buffers.
Directing connections to TCP Pacers and kTLS workers bound to the local domain.
Directing incoming connections to Nginx workers bound to the local domain via modifications to SO_REUSEPORT_LB listen sockets.
I will present data from real Netflix servers showing an improvement of almost 2x on AMD EPYC (85Gbs - 165Gbs), and 1.3x on Intel Xeon (140Gb/s - 180Gbs). I will present data from the Xeon system showing a 50% reduction in cross-domain traffic.
Drew Gallatin
Drew started working on FreeBSD at Duke in the 90s, and was one of the people behind the FreeBSD/alpha port. He worked on zero-copy TCP optimizations for FreeBSD and was sending data at over 1Gb/s before gigabit Ethernet was generally available. He spent a decade at Myricom, optimizing their drivers. After a brief hiatus at Google, he landed at Netflix, where he works on optimizing the FreeBSD kernel and network stack for content delivery. He worked on the optimizations to serve unencrypted Netflix traffic at 100Gb/s, and then on more optimizations to send encrypted traffic at 100Gb/s.

Пікірлер: 5
@phaub
@phaub 4 жыл бұрын
Thank you for the upload. This is very interesting.
@kimp_ossible
@kimp_ossible 4 жыл бұрын
27:00 Maybe Xeon performance without Siloing dropped due to CPU security fixes present on Intel that aren’t on AMD?
@Transmissions
@Transmissions 3 жыл бұрын
I wonder if this was with SMT enabled or disabled?
@jkmicha
@jkmicha 10 ай бұрын
i doubt smt matters very much since the cpu load will be on the memory controllers and on the AES stack
@mc4ndr3
@mc4ndr3 2 жыл бұрын
bruh i can add 10 more GB/sec and drop saturation to zero with this simple trick... jes pull out cpus and nics until you don't have 2 numa boundaries. no more numa boundary crossings. win monies. dream big. alternatively, present copies of the data on redundant disks, one copy per cpu. again, numa crossings drop to zero. no matter which nic the packet come in, the data will be there for that nic's cpu.
The future of OpenZFS and FreeBSD
41:47
EuroBSDcon
Рет қаралды 12 М.
Serving Netflix Video at 400Gbps on FreeBSD by Drew Gallatin
47:42
DEFINITELY NOT HAPPENING ON MY WATCH! 😒
00:12
Laro Benz
Рет қаралды 63 МЛН
World’s Largest Jello Pool
01:00
Mark Rober
Рет қаралды 79 МЛН
Llegó al techo 😱
00:37
Juan De Dios Pantoja
Рет қаралды 56 МЛН
Slow motion boy #shorts by Tsuriki Show
00:14
Tsuriki Show
Рет қаралды 9 МЛН
What is NUMA?
21:37
Level1Techs
Рет қаралды 83 М.
Why We Run FreeBSD current at Netflix - Drew Gallatin
40:20
OpenFest Bulgaria
Рет қаралды 10 М.
Making C Less Dangerous in the Linux kernel
44:59
linux.conf.au
Рет қаралды 76 М.
Network Stacks and the Internet - Computerphile
7:11
Computerphile
Рет қаралды 169 М.
ZFS for Newbies
34:35
EuroBSDcon
Рет қаралды 75 М.
Apple M1 Ultra & NUMA - Computerphile
15:24
Computerphile
Рет қаралды 254 М.
Nature's Incredible ROTATING MOTOR (It’s Electric!) - Smarter Every Day 300
29:37
1$ vs 500$ ВИРТУАЛЬНАЯ РЕАЛЬНОСТЬ !
23:20
GoldenBurst
Рет қаралды 1,9 МЛН
iPhone 16 с инновационным аккумулятором
0:45
ÉЖИ АКСЁНОВ
Рет қаралды 9 МЛН