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

Reply via email to