TH: This feature would seemingly benefit end-users with slightly dated hardware (old single- or dual-core processors). Does this feature pose a benefit to enthusiasts with high-end quad-core and extreme dual core processors? How about for upcoming i7 (Nehalem) processor technology?
Harlan: Our testing with dual- and quad-core machines have shown equal or better gains than the older single-core machines. Most online games cannot, by their nature, take good advantage of multi-core when it comes to networking. Things have to happen in order, and that means serializing it. The Windows Kernel isn’t optimized for multi-core, either. Driver developers who want to take advantage of multi-core can only do so if they have different functions or asynchronous behavior. This isn’t true for networking. Having data for the same socket out of order is a gaming disaster in terms of performance and playability.
In general, our testing shows that since Kernel drivers and the Winsock and Networking Layers of Windows are NOT heavily multi-core optimized, that our impact is greater on many dual/quad core processors because core frequencies are usually slightly lower than single core processors. Even if they were optimized for multi-core, the whole paradigm of “interrupting on every packet” and “spend as little time as possible” and “optimize for latency and not throughput” that we focus on is so different and independent from number of cores that it blows away any other solution even on highly optimized code. More cores are better for your graphics and physics and AI etc., but networking always has to have a sequence, and only one company is dedicated to making that sequence as fast as possible, and optimizing for the best latency response and the best possible FPS for each game we test (and we test almost all MMO and online FPS games).
TH: The Killer NIC’s ability to execute a self-contained firewall and run clients for services such as BitTorrent (FNA) would seem to offer a unique advantage to the cards user by removing the processing of these functions from the main system. However, if the user were to use FNA based BitTorrent without the use of an external hard drive on the Killer NICs USB port, would the disk I/O generated by heavy torrenting make up for the offloading of the UDP processing?
Harlan: Great question, as it is a feature I’m currently actively working on with our Development team. In general, we have some of the best developers in the world on our staff! How did we do that? 1.) We live in Austin and we are a gaming company, so we attract the best & brightest engineers from some of the worlds’ best companies. 2.) While I was an Architect at Intel, I made a LOT of friends, and those guys were asked by Intel to move back to Intel Oregon... BAD MOVE! Almost none of my former team left to Oregon, and instead many took jobs at start-ups in Austin. Bigfoot was the happy beneficiary of many of those folks, including Charlie Musta, a guy who I think is the worlds’ best Windows driver developer with over 25 years of driver development experience and who happened to also co-found Bigfoot with me.
That said, we have several pretty slick ways of limiting the disk I/O problem for things like BitTorrent vs. gaming, and I bet you can probably guess what it is. Ironically, it is doing what Intel and others do but only for non-gaming applications. In short, we have in development the ability to allow some data to be optimized for throughput (like disk I/O and File Transfer) while other data takes the low-latency Bypass path. This isn’t easy stuff to do, so I don’t have an ETA on when it will be widely available, but it is definitely “optimizable” with an NPU, since we can optimize each connection independently.