Following the announcement of comBIOS 1.41c for the Soekris 6501, I did
some work on addressing the remaining quirks present when using CentOS 6
x86_64. Hopefully this information is useful to other Linux users.
These are the notes that I shared with my coworkers:
We updated the kernel parameters to include:
pcie_aspm=off processor.max_cstate=1 clocksource=tsc
*pcie_aspm=off*: The Intel 82574L Ethernet chipset is buggy. If Linux
puts the chip into a low-power state, it never recovers. This will
apparently be resolved in RHEL 6.4 by disabling ASPM for that chipset.
https://bugzilla.redhat.com/show_bug.cgi?id=632650
*clocksource=tsc*: Set the preferred system clock source to the CPU's
TSC. The system will otherwise prefer "jiffies" which is extremely
inefficient. As far as I can tell, one of the two CPU threads will be
entirely consumed processing interrupts when "jiffies" is used as a time
source.
*processor.max_cstate=1*: Some BIOSs indicate that they support C2, but
in fact implement C3 sleep state. While C2 sleep state would normally
keep the TSC operating normally, setting the max state to 1 is commonly
advised because Linux cannot detect whether or not this flaw exists.
I'm reasonably certain that we can safely allow C2 on the Soekris, but
at the same time I'm not sure the Soekris comBIOS implements any sleep
states at all since it doesn't support CPU frequency scaling. Now that
the comBIOS is updated, they system always runs at 1600Mhz. If we later
find that the CPU supports C2, we might save a small amount of power and
heat by adjusting this setting.
http://lkml.indiana.edu/hypermail/linux/kernel/1101.1/00461.html
With the CPU now running at 1600Mhz instead of 600Mhz, and with the CPU
freed from constantly handling interrupts, I've seen a 600% improvement
in plain-text network throughput, measured using netcat writing to
/dev/null. We also see almost 165% improvement in OpenSSL's speed test
results in most cases for 8k blocks of data.
*type* *1024 bytes* *8192 bytes* *1024 bytes* *8192 bytes* *1k
speedup* *8k speedup*
md5 197075.63 269090.82 61585.61 99193.96
3.2000272466 2.7127742455
hmac(md5) 205404.16 271944.36 64234.74 100092.09 3.1977113942
2.7169415685
sha1 136288.26 160808.96 35529.06 44775.68
3.8359658263 3.5914353506
sha256 52461.57 56202.58 19435.59 21323.69
2.6992527626 2.6356873505
sha512 77031.08 87545.17 28673.36 33238.84
2.6865034304 2.6338214571
des cbc 16583.68 16586.07 6779.83 6787.66
2.4460318327 2.443562288
blowfish cbc 33024.68 33068.37 14814.66 14849.02 2.229189195
2.2269732279
aes-128 cbc 24811.18 24865.45 18623.53 18759.95 1.3322490419
1.3254539591
aes-192 cbc 20601.11 20698.45 15688.97 15787.97 1.3130951235
1.3110266868
aes-256 cbc 17543.85 17549.99 13296.69 13365.75 1.3194148318
1.3130568805
aes-128 ige 23541.76 23483.73 8942.48 8951.32 2.6325761981
2.6234935183
aes-192 ige 19767.30 19729.07 7509.56 7519.77 2.6322847144
2.6236267865
aes-256 ige 16833.40 16845.48 6413.10 6420.24 2.6248460183
2.6238084558
_______________________________________________
Soekris-tech mailing list
[email protected]
http://lists.soekris.com/mailman/listinfo/soekris-tech