De acordo com a postagem no fórum o NetDMA foi removido da janela 8 e do servidor 2012/2012 R2 devido a não está realmente reduzindo o uso da CPU:
Jeffrey Tippet [MSFT]
[email protected]
> Any clue why was this feature not supported Win 8 on wards?
I removed NetDMA in Windows 8. Hopefully, I have slightly more than a clue :)
The purpose of NetDMA was to reduce CPU usage by offloading memcpy to a generic offload engine.
But in networking, we tend to handle fairly small buffers. A typical network buffer tends to not be larger than 1500 bytes. (Yes we can do LSOs of many kilobytes, but NetDMA was limited to only 2 pages of memory per transaction, so at most NetDMA should be compared to an 8kb buffer.)
Which uses less CPU:
- Setting up a DMA offload to the hardware & continuing when the hardware interrupts its completion
- memcpy 1500 bytes on the CPU
With newer CPUs, the answer tends to be #2.
Since the whole purpose of NetDMA was to reduce CPU usage, and it wasn't even providing a clear CPU reduction, that makes NetDMA a dubious benefit. Add to that it had low adoption (not many vendors implemented a NetDMA provider), and the value of keeping the feature wasn't there. Its competitor, memcpy, is simpler, better-supported, easier to debug, and is sometimes even faster.
⋮