TOEs are now last seasons Manolo Blahnik’s, only worse?

This was originally published in June of 2008 at

For those not into style Manolo Blahnik is one of the leading female shoe designers, and often Blahnik’s start at $700/pair, the price of a good 10GbE NIC. As most servers have moved to dual socket quad-core processors the value proposition for TCP Offload Engine (TOE) 10GbE NICs has quickly eroded. 

In the spring of 2006, a good non-TOE 10GbE NIC consumed 40% of the host CPU in a dual-socket dual-core server and provided >6Gbps of performance, while a similar TOE did the same job using only 10% of the host CPU. So with a 30% savings in host CPU, there was some value in using a TOE. With two years of improvements in silicon, stateless offloads, and servers moving to dual-socket quad cores we now have 10GbE NICs capable of near-wire rate (>9.5Gbps) that consume only 10% of the host CPU. Similarly, TOE NICs in the same environment consume roughly 5% of the host CPU.
By most estimates, servers are typically running at 20% CPU utilization, as a result of application load. So will a 5% savings in host CPU be noticed, let alone worth the added purchase price of a TOE? No. Add to that the Linux Foundation’s 14-point argument against using TOES, written by the Linux Kernel developers themselves, and one would wonder why people still consider TOEs in style.
Here are the 14 reasons cited by the Linux Foundation on their
  1. Security updates
  2. Point-in-time solution
  3. Different network behavior
  4. Performance
  5. Hardware-specific limits
  6. Resource-based denial-of-service attacks
  7. RFC compliance
  8. Linux features
  9. Requires vendor-specific tools
  10. Poor user support
  11. Short term kernel maintenance
  12. Long term user support
  13. Long term kernel maintenance
  14. Eliminates global system view
If you are seriously interested in buying a TOE you should read their TOE page.

2 thoughts on “TOEs are now last seasons Manolo Blahnik’s, only worse?

  1. Yes, but keep in mind that this article is nearly six years old. Back then Myricom's 1/2 round trip performance (one send + one receive) was at 12-15us for their generic Linux 10G driver. Today Solarflare's generic Linux driver provides less than half that, TCP of roughly 6.3us, and UDP 5.4us, while our accelerated Open Onload stack is 1.8us for TCP and 1.7us for UDP.

Leave a Reply