ix(intel) vs mlxen(mellanox) 10Gb performance

Alban Hertroys haramrae at gmail.com
Mon Aug 17 15:44:38 UTC 2015


On 17 August 2015 at 13:54, Slawa Olhovchenkov <slw at zxy.spb.ru> wrote:
> On Mon, Aug 17, 2015 at 01:49:27PM +0200, Alban Hertroys wrote:
>
>> On 17 August 2015 at 13:39, Slawa Olhovchenkov <slw at zxy.spb.ru> wrote:
>>
>> > In any case, for 10Gb expect about 1200MGB/s.
>>
>> Your usage of units is confusing. Above you claim you expect 1200
>
> I am use as topic starter and expect MeGaBytes per second

That's a highly unusual way of writing MB/s.

There are standards for unit prefixes: k means kilo, M means Mega, G
means Giga, etc. See:
https://en.wikipedia.org/wiki/International_System_of_Units#Prefixes

>> million gigabytes per second, or 1.2 * 10^18 Bytes/s. I don't think
>> any known network interface can do that, including highly experimental
>> ones.
>>
>> I suspect you intended to claim that you expect 1.2GB/s (Gigabytes per
>> second) over that 10Gb/s (Gigabits per second) network.
>> That's still on the high side of what's possible. On TCP/IP there is
>> some TCP overhead, so 1.0 GB/s is probably more realistic.
>
> TCP give 5-7% overhead (include retrasmits).
> 10^9/8*0.97 = 1.2125

In information science, Bytes are counted in multiples of 2, not 10. A
kb is 1024 bits or 2^10 b. So 10 Gb is 10 * 2^30 bits.

It's also not unusual to be more specific about that 2-base and use
kib, Mib and Gib instead.

Apparently you didn't know that...

Also, if you take 5% off, you are left with (0.95 * 10 * 2^30) / 8 =
1.1875 B/s, not 0.97 * ... Your calculations were a bit optimistic.

Now I have to admit I'm used to use a factor of 10 to convert from b/s
to B/s (that's 20%!), but that's probably no longer correct, what with
jumbo frames and all.

-- 
If you can't see the forest for the trees,
Cut the trees and you'll see there is no forest.


More information about the freebsd-net mailing list