<tt><font size=2>&gt;I'm a bit surprised that 128 byte send sizes is faster
than 16K, but I <br>
&gt;suppose if the system is small enough, or has a small enough page size
<br>
&gt;(?) there may be some issues with ease of buffer allocation.<br>
</font></tt>
<br><tt><font size=2>Here are the info concerning both sides meminfo:</font></tt>
<br><tt><font size=2>For the server (8 cores processor)</font></tt>
<br><tt><font size=2>/proc# cat meminfo</font></tt>
<br><tt><font size=2>MemTotal: &nbsp; &nbsp; &nbsp; &nbsp;3762812 kB</font></tt>
<br><tt><font size=2>MemFree: &nbsp; &nbsp; &nbsp; &nbsp; 3576576 kB</font></tt>
<br><tt><font size=2>Buffers: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
896 kB</font></tt>
<br><tt><font size=2>Cached: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
8108 kB</font></tt>
<br><tt><font size=2>SwapCached: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0
kB</font></tt>
<br><tt><font size=2>Active: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
4832 kB</font></tt>
<br><tt><font size=2>Inactive: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 5068
kB</font></tt>
<br><tt><font size=2>Active(anon): &nbsp; &nbsp; &nbsp; 1304 kB</font></tt>
<br><tt><font size=2>Inactive(anon): &nbsp; &nbsp; &nbsp; &nbsp;8 kB</font></tt>
<br><tt><font size=2>Active(file): &nbsp; &nbsp; &nbsp; 3528 kB</font></tt>
<br><tt><font size=2>Inactive(file): &nbsp; &nbsp; 5060 kB</font></tt>
<br><tt><font size=2>Unevictable: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0
kB</font></tt>
<br><tt><font size=2>Mlocked: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; 0 kB</font></tt>
<br><tt><font size=2>HighTotal: &nbsp; &nbsp; &nbsp; 3145724 kB</font></tt>
<br><tt><font size=2>HighFree: &nbsp; &nbsp; &nbsp; &nbsp;2985268 kB</font></tt>
<br><tt><font size=2>LowTotal: &nbsp; &nbsp; &nbsp; &nbsp; 617088 kB</font></tt>
<br><tt><font size=2>LowFree: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;591308
kB</font></tt>
<br><tt><font size=2>SwapTotal: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
0 kB</font></tt>
<br><tt><font size=2>SwapFree: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;0 kB</font></tt>
<br><tt><font size=2>Dirty: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; 0 kB</font></tt>
<br><tt><font size=2>Writeback: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
0 kB</font></tt>
<br><tt><font size=2>AnonPages: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1092
kB</font></tt>
<br><tt><font size=2>Mapped: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
1300 kB</font></tt>
<br><tt><font size=2>Shmem: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
124 kB</font></tt>
<br><tt><font size=2>Slab: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;17112
kB</font></tt>
<br><tt><font size=2>SReclaimable: &nbsp; &nbsp; &nbsp; 2124 kB</font></tt>
<br><tt><font size=2>SUnreclaim: &nbsp; &nbsp; &nbsp; &nbsp;14988 kB</font></tt>
<br><tt><font size=2>KernelStack: &nbsp; &nbsp; &nbsp; &nbsp; 560 kB</font></tt>
<br><tt><font size=2>PageTables: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;304
kB</font></tt>
<br><tt><font size=2>NFS_Unstable: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0
kB</font></tt>
<br><tt><font size=2>Bounce: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;0 kB</font></tt>
<br><tt><font size=2>WritebackTmp: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0
kB</font></tt>
<br><tt><font size=2>CommitLimit: &nbsp; &nbsp; 1881404 kB</font></tt>
<br><tt><font size=2>Committed_AS: &nbsp; &nbsp; &nbsp; 3548 kB</font></tt>
<br><tt><font size=2>VmallocTotal: &nbsp; &nbsp; 241504 kB</font></tt>
<br><tt><font size=2>VmallocUsed: &nbsp; &nbsp; &nbsp;135464 kB</font></tt>
<br><tt><font size=2>VmallocChunk: &nbsp; &nbsp; 105308 kB</font></tt>
<br><tt><font size=2>HugePages_Total: &nbsp; &nbsp; &nbsp; 0</font></tt>
<br><tt><font size=2>HugePages_Free: &nbsp; &nbsp; &nbsp; &nbsp;0</font></tt>
<br><tt><font size=2>HugePages_Rsvd: &nbsp; &nbsp; &nbsp; &nbsp;0</font></tt>
<br><tt><font size=2>HugePages_Surp: &nbsp; &nbsp; &nbsp; &nbsp;0</font></tt>
<br><tt><font size=2>Hugepagesize: &nbsp; &nbsp; &nbsp; 4096 kB</font></tt>
<br>
<br><tt><font size=2>For the client (Xeon dual core):</font></tt>
<br><font size=2 face="Courier New">cat /proc/meminfo </font>
<br><font size=2 face="Courier New">MemTotal: &nbsp; &nbsp; &nbsp; &nbsp;1897676
kB</font>
<br><font size=2 face="Courier New">MemFree: &nbsp; &nbsp; &nbsp; &nbsp;
1449996 kB</font>
<br><font size=2 face="Courier New">Buffers: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; 16768 kB</font>
<br><font size=2 face="Courier New">Cached: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; 247420 kB</font>
<br><font size=2 face="Courier New">SwapCached: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;0 kB</font>
<br><font size=2 face="Courier New">Active: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; 150448 kB</font>
<br><font size=2 face="Courier New">Inactive: &nbsp; &nbsp; &nbsp; &nbsp;
217108 kB</font>
<br><font size=2 face="Courier New">Active(anon): &nbsp; &nbsp; 105576
kB</font>
<br><font size=2 face="Courier New">Inactive(anon): &nbsp; &nbsp; &nbsp;
32 kB</font>
<br><font size=2 face="Courier New">Active(file): &nbsp; &nbsp; &nbsp;44872
kB</font>
<br><font size=2 face="Courier New">Inactive(file): &nbsp; 217076 kB</font>
<br><font size=2 face="Courier New">Unevictable: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; 0 kB</font>
<br><font size=2 face="Courier New">Mlocked: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; 0 kB</font>
<br><font size=2 face="Courier New">HighTotal: &nbsp; &nbsp; &nbsp; 1178632
kB</font>
<br><font size=2 face="Courier New">HighFree: &nbsp; &nbsp; &nbsp; &nbsp;
782452 kB</font>
<br><font size=2 face="Courier New">LowTotal: &nbsp; &nbsp; &nbsp; &nbsp;
719044 kB</font>
<br><font size=2 face="Courier New">LowFree: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;667544 kB</font>
<br><font size=2 face="Courier New">SwapTotal: &nbsp; &nbsp; &nbsp; 2104472
kB</font>
<br><font size=2 face="Courier New">SwapFree: &nbsp; &nbsp; &nbsp; &nbsp;2104472
kB</font>
<br><font size=2 face="Courier New">Dirty: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; 136 kB</font>
<br><font size=2 face="Courier New">Writeback: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; 0 kB</font>
<br><font size=2 face="Courier New">AnonPages: &nbsp; &nbsp; &nbsp; &nbsp;103412
kB</font>
<br><font size=2 face="Courier New">Mapped: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;51612 kB</font>
<br><font size=2 face="Courier New">Shmem: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;2240 kB</font>
<br><font size=2 face="Courier New">Slab: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;21148 kB</font>
<br><font size=2 face="Courier New">SReclaimable: &nbsp; &nbsp; &nbsp;12400
kB</font>
<br><font size=2 face="Courier New">SUnreclaim: &nbsp; &nbsp; &nbsp; &nbsp;
8748 kB</font>
<br><font size=2 face="Courier New">KernelStack: &nbsp; &nbsp; &nbsp; &nbsp;1592
kB</font>
<br><font size=2 face="Courier New">PageTables: &nbsp; &nbsp; &nbsp; &nbsp;
2420 kB</font>
<br><font size=2 face="Courier New">NFS_Unstable: &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;0 kB</font>
<br><font size=2 face="Courier New">Bounce: &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;0 kB</font>
<br><font size=2 face="Courier New">WritebackTmp: &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;0 kB</font>
<br><font size=2 face="Courier New">CommitLimit: &nbsp; &nbsp; 3053308
kB</font>
<br><font size=2 face="Courier New">Committed_AS: &nbsp; &nbsp; 337596
kB</font>
<br><font size=2 face="Courier New">VmallocTotal: &nbsp; &nbsp; 122880
kB</font>
<br><font size=2 face="Courier New">VmallocUsed: &nbsp; &nbsp; &nbsp; 30804
kB</font>
<br><font size=2 face="Courier New">VmallocChunk: &nbsp; &nbsp; &nbsp;83100
kB</font>
<br><font size=2 face="Courier New">HardwareCorrupted: &nbsp; &nbsp; 0
kB</font>
<br><font size=2 face="Courier New">HugePages_Total: &nbsp; &nbsp; &nbsp;
0</font>
<br><font size=2 face="Courier New">HugePages_Free: &nbsp; &nbsp; &nbsp;
&nbsp;0</font>
<br><font size=2 face="Courier New">HugePages_Rsvd: &nbsp; &nbsp; &nbsp;
&nbsp;0</font>
<br><font size=2 face="Courier New">HugePages_Surp: &nbsp; &nbsp; &nbsp;
&nbsp;0</font>
<br><font size=2 face="Courier New">Hugepagesize: &nbsp; &nbsp; &nbsp;
2048 kB</font>
<br><font size=2 face="Courier New">DirectMap4k: &nbsp; &nbsp; &nbsp; 10232
kB</font>
<br><font size=2 face="Courier New">DirectMap2M: &nbsp; &nbsp; &nbsp;890880
kB</font>
<br><tt><font size=2><br>
&gt;I might have guessed something to do with processor data cache <br>
&gt;residency, but presumably the size of the send ring will be, by default,
<br>
&gt;one more buffer than fits in the SO_SNDBUF size when the data socket
is <br>
&gt;created - I suppose if the cache is &lt; 32KB the 128 B send case would
<br>
&gt;have the buffer ring fit and 16KB sends would not. &nbsp;Testing that
would <br>
&gt;call for HW counter information from the processor. &nbsp;Going back
through <br>
&gt;the string you mentioned something with 32KB L1 data cache and a 128
KB <br>
&gt;L2 cache - is that on both sides or just one?<br>
</font></tt>
<br><font size=2 face="sans-serif">For the P4080, I have 32/32kB instruction/data
L1 caches and a 128&nbsp;kB L2 cache per core (8).</font>
<br><font size=2 face="sans-serif">For the Intel Xeon Dual, I have 16/16kB
instruction/data L1 caches per core (2) and a 6144&nbsp;kB L2 cache.</font>
<br><tt><font size=2><br>
&gt;Some experimentation with different socket buffer sizes, explicitly
set <br>
&gt;with test-specific -s and -S might be a good thing.<br>
</font></tt>
<br><font size=2 face="sans-serif">I will try going this way.</font>
<br><tt><font size=2><br>
&gt;That the remote CPU utilization is coming back as a negative value
is <br>
&gt;quite troubling and requires further investigation.<br>
&gt;<br>
&gt;I wouldn't expect redirecting netperf output to cause a big performance
<br>
&gt;change, certainly not one that would vary with the parms to netperf
- <br>
&gt;the quantity of output will be the same whether -m is 128 or 16K or
<br>
&gt;anything else.<br>
&gt;<br>
&gt;happy benchmarking,<br>
&gt;<br>
&gt;rick jones<br>
</font></tt>
<br>