Re: changing usbnet's API to better deal with cdc-ncm

Oliver Neukum
2012-09-07T13:08:44Z

On Friday 07 September 2012 14:01:23 Alexey ORISHKO wrote:
> The experience from early implementations and prototyping of NCM was that
> using NCM with 4-8kB NTB increased max throughput in loop-mode by a factor
> of 5-6 even 8-10 times compared to using ECM. One real-world example was
> modem for 21+6Mbit/s what used 100% CPU with ECM responsible for approx. 40%
> of the MIPS used. Using NCM instead CPU was only at approx. 65% utilization.
> Which allowed multiple other functions to be added and significantly increased
> the usability and value of the modem.
>
> NCM efficiency is gained either by accessing TX queue of upper layer or
> by using timer.
>
> These findings were later confirmed by multiple major industry players
> (names withheld), and demonstrated during multiple NCM interoperability
> workshops using multiple device HW platforms, multiple operating systems
> and multiple host HW ranging from Beagleboard to latest quad-core x86.
>
> Until we do something with network device framework in order to get access
> to upper layer Tx queue we need to utilize timer.

Could you explain your reasoning? From what you say we must reduce the number
of transfers, thus use them efficiently, but why by means of a timer?

Regards
Oliver