Innovation is a lot like love, everyone knows when it happens, but nobody really knows what it is - Dean 'Mr Segway' Kamen
The NIC whose name we shall not speak was has been on sale for a while now, and was waiting to be 'released' officially because it lacked a name. Well, there is no name yet, and as has been the case for the past few weeks, you can still buy one without a name. Sigh.
What Neptune is is a dual channel 10GbE NIC over fiber that plugs in to a PCIe 8x slot. The physical card is low profile and has enough heatsinks to resemble a mid-range medieval torture device. You can buy them now, and before now, for $995, but they will arrive in a brown box with "Sun x8 Express Dual 10 Gigabit Ethernet Fiber XFP Low Profile Adapter" on them.
This is not to say that Sx8ED10GEFXFPLPA, as we have all lovingly grown to calling it, does not have some really cool features, it does. Sun is claiming almost line rate throughput achieved not through TOEs, brainpower on the NIC or Area-57 technology, far from it, it dumbed the NIC down. What it did do is multithread the NIC and allow it to bind threads on the NIC to threads on the system.
Instead of a NIC changing contexts, dealing with threads on the PC fighting for a single pipe that is a NIC, and other little turf battles, the Sx8ED10GEFXFPLPA is simply 24 little pipes that can arbitrate amongst themselves in a much friendlier fashion. The card can handle up to 24 workloads, so if you bind one to each CPU, you will still have more than a third of the card twiddling it's thumbs on a 4S 16C system.
The basic dumb no-config setup does just that, takes a thread and assigns it to the applicable hardware on the NIC. If you want to spend a lot of time tweaking the stack, the NIC can classify workloads and assign card resources to types of workloads. Basically the card can sort traffic on top of assigning its resources to CPU resources.
If you tweak it enough, you can make it so the corporate email gets one or two "NIC threads", basically low priority, and other workloads can get 20 or more. That means that nasty corporate mission critical stuff won't interfere with the booming quasi-legal porn business you are hosting off the company servers. The bosses need never know.
With a bit of tweaking, a Sun Fire T2000 on Solaris 10 got 8.75Gbps of transmit and 9.40 Gbps receive bandwidth (MTU of 1500 if you care). Linux on an Dual Opteron at 2.8GHz was at 7.7 and 7.3Gbps respectively reflecting the state of tuning more than anything else. Windows numbers will have to wait a few months for drivers.
In addition to waiting a few months for Windows drivers, you will have to wait a until the end of the year for a copper variant, and a single port one will come around that time as well. There will be a blade version in the middle of the year, and the chips themselves will be on motherboards in 2008.
What you end up with is a NIC that uses tons and tons of threads to make sure the port itself is never idle, or at least never is waiting on the NIC to send data out. Instead of making it smarter to manage a single stream better, Sun made Sx8ED10GEFXFPLPA able to handle multiple streams to there is always something to stick in the pipe.
Dumber not smarter may be the best thing for NICs, there is certainly more CPU power than ever to throw at it. It will be really interesting to see how these beasties perform in the real world, how can you go wrong with a name like Sx8ED10GEFXFPLPA? µ
Sign up for INQbot – a weekly roundup of the best from the INQ