Open emmericp opened 5 years ago
I'm just wondering why the 0.3624x + 5781
is curvy! Shouldn't it be just straight?
@sarsanaee log scale?
This is a cool slide :). So we can state the EasyNIC goal as being to have y=500 instead of y=0.3624x+5781. That's our marketing message taken care of! ;-)
@emmericp Have you looked at total lines of code per vendor? (Are there any vendors who support 10G-100G with a small amount of driver code covering all their current models for both Linux and DPDK?)
The Amazon ena drivers are relatively simple with ~7k lines of code for both the DPDK and Linux drivers: https://github.com/amzn/amzn-drivers
$ cloc linux/drivers/net/ethernet/amazon/
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
C 4 1489 537 5693
C/C++ Header 8 631 1191 1474
make 2 3 6 3
-------------------------------------------------------------------------------
SUM: 14 2123 1734 7170
-------------------------------------------------------------------------------
$ cloc dpdk/drivers/net/ena/
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
C 3 1087 328 4205
C/C++ Header 13 836 1320 2414
make 1 7 39 17
NAnt script 1 3 0 8
-------------------------------------------------------------------------------
SUM: 18 1933 1687 6644
-------------------------------------------------------------------------------
And ENA started off supporting 10 Gbps, then 25, now up to 100 Gbps - without driver changes.
Do you have a source for 100G support on EC2 VMs? I haven't classified ENA as 100G in the graph above because I couldn't find such hardware. Sure, it claims to support up to 400G but if there's no hardware then that doesn't really count ;)
The plot shows Ethernet drivers in Linux 4.19 and DPDK (forgot the exact version) by the maximum speed they support vs. the lines of code. There is a linear correlation (R^2 = 0.37) between network speed and driver complexity, so it's only going to get worse for now.