Vimage globals vs structures measurements.
Julian Elischer
julian at elischer.org
Mon Feb 2 12:29:49 PST 2009
Julian Elischer wrote:
> Julian Elischer wrote:
>>
>> anyone who has commands and args for their favourite
>> thing the'd like me to test... send it in..
>>
>>
>> so far using ttcp I have seem no measureable difference.
>>
>> but I have more tests to do of course..
>>
>> for example throughput with small packets with ttcp (KB/Sec)....
>>
>>
>> x VIMAGE_GLOBALS
>> + NO_VIMAGE_GLOBALS
>> +-----------------------------------------------------------------+
>> | + xx |
>> | + xxx + |
>> | + xxx x ++++ |
>> | x + x + + xxxxxxx +++++ |
>> |x + ++ xx xxx + ++++xxx x x x +++++ ***xxxxx ++++++++|
>> | |_____________A______M______| |
>> | |________________AM________________| |
>> +-----------------------------------------------------------------+
>> N Min Max Median Avg Stddev
>> x 40 48016.01 57361.32 56268.06 54915.582 2554.0133
>> + 40 48999.66 59646.59 56261.58 56086.798 3119.1782
>> _______________________________________________
>> freebsd-net at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-net
>> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
>
> as I said before mst of my tests have shown no real change but this one
> has the most change I've seen.. it's 160 byte udp packets sent between
> two identical machines (both using the same kernel each time).
>
>
> x VIMAGE_GLOBALS
> + NO_VIMAGE_GLOBALS
> +-----------------------------------------------------------------+
> | + + ++ xx x x |
> | + + ++ +x++x +xx x x |
> | + + +++ + +*+**x+xxxx x |
> | + +++ +++x*++*+**x*x*xx x x x |
> | + +*+++++x**+*+**x*x*x*xx x x xx |
> | ++++*++++****+*+**x*x****x xxxx xxx |
> | + + xx + ++++*++*+****+***********x*xxxxx xxxx x|
> |+ +*+++ xx++*+*+*+****+****************x***x*xxx*xx x xx x|
> | |__________A__________| |
> | |_________A________| |
> +-----------------------------------------------------------------+
> N Min Max Median Avg Stddev
> x 150 10175.11 11292.11 10763.80 10760.77 200.92124
> + 150 10075.64 11019.12 10591.68 10580.059 172.29227
> Difference at 95.0% confidence
> -180.711 +/- 42.3572
> -1.67935% +/- 0.393626%
> (Student's t, pooled s = 187.155)
>
> this one showed a 1.7% slowdown
> where the one above showed a half percent speedup
> (but not considered significant).
>
> The first one shown above was TCP with 1500 byte packets on bge 1G
> interfaces..
>
> more test ideas appreciated...
more tests..
this one with iperf...
x NO_VIMAGE_GLOBALS
+ VIMAGE_GLOBALS
+-----------------------------------------------------------------+
| + x x x |
| + + x x x x |
| + + + + x x x x |
| + + + + x x x x |
| + + + + + x x x x x |
| + + + + * x x x x x x |
| + + + + * x * x x x x |
| + + + + + * * * x x x x |
| + + + + + + * * * x x x x |
| + + + + + + + * * * x x x x |
| + + + + + + + * * * * x x x x x |
| + + + + + + * * * * * * x x x x |
| + + + + + + * * * * * * x x x x |
| + + + + + + * * * * * * * * x * x x |
|x + + + + * * * * * * * * * * * * x x x|
| |________A_________| |
| |________MA_________| |
+-----------------------------------------------------------------+
N Min Max Median Avg Stddev
x 120 418 441 435 435.025 3.4089908
+ 120 423 438 429 429.51667 3.4664862
Difference at 95.0% confidence
-5.50833 +/- 0.869898
-1.26621% +/- 0.199965%
(Student's t, pooled s = 3.43786)
bigger is better...
In this case we see that NO_VIMAGE_GLOBALS is better. Over several
iterations I have come to the conclusion that other factors are
overwhelming this change and that the effect of clustering all the
'global' variables together into a single global structure is negligible.
If I can get some confirmation of this by others then
the next step would be to simply remove the VIMAGE_GLOBALS option
and all the global variables it covers.
At least that's what seems next to me..
see:
http://wiki.freebsd.org/Image/Notes200808DevSummit
>
>
>
> _______________________________________________
> freebsd-net at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-net
> To unsubscribe, send any mail to "freebsd-net-unsubscribe at freebsd.org"
More information about the freebsd-net
mailing list