VIA for HTPC, Padlock benchmark

Boomslang

Limp Gawd
Joined
Apr 28, 2007
Messages
451
Hi, I'm recently starting to see that VIA is a pretty good platform. I run a mixed environment with various Linux distros and occasionally OpenBSD, and I picked up a VIA C7 mini-itx board a while back on a whim thinking I would make a web radio appliance out of it. Well, I then did some more reading and discovered the VIA Padlock crypto acceleration, which blew my mind considering a lot of stuff I work with (HTTP, VPN, various tunneling junk) all use SSL. I benchmarked the lowly VIA C7 against my slightly overclocked Core 2 Duo Conroe E6600 machine here:
Code:
Benchmark of the Padlock ACE hardware crypto (AES, SHA also supported) built
into the VIA C7 Esther CPU

### VIA Platform ###
1GHz VIA C7 Esther
512MB DDR2-533
OpenSSL 0.9.8g, compiled from source with two patches applied:
http://launchpadlibrarian.net/13798833/bug119295.patch
http://www.logix.cz/michal/devel/padlock/contrib/openssl-0.9.8e-engine.diff
uname -a: Linux skil 2.6.24-gentoo-r8 #2 Wed Jul 2 23:37:14 EDT 2008 i686 VIA
Esther processor 1000MHz CentaurHauls GNU/Linux
/proc/cpuinfo:
model name      : VIA Esther processor 1000MHz
stepping        : 9
cpu MHz         : 1000.050
cache size      : 128 KB

### Conroe Platform ### 
2.4GHz Intel Core 2 Duo E6600 Conroe
4GB DDR2-800
OpenSSL 0.9.8g, compiled from the Gentoo ebuild with default patchset
uname -a: Linux rho 2.6.24-gentoo-r8 #10 SMP Mon Jun 9 21:13:32 EDT 2008
x86_64 Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz GenuineIntel GNU/Linux
/proc/cpuinfo:
model name      : Intel(R) Core(TM)2 CPU          6600  @ 2.40GHz
stepping        : 6
cpu MHz         : 2394.000
cache size      : 4096 KB

### To Do List ###
-SCP tranfer benchmark


### OpenSSL Speed Results ###

The 'numbers' are in 1000s of bytes per second processed.

### openssl speed -evp aes-128-ecb
Conroe: 
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-128-ecb     126762.86k   142482.21k   144109.89k   145852.89k   142961.47k

Esther, no Padlock:
aes-128-ecb       6898.21k     7296.00k     7458.47k     7469.08k     7503.87k

Esther, Padlock:
aes-128-ecb      37268.33k   132866.05k   345851.32k   554487.47k   682592.94k


### openssl speed -evp aes-128-cbc
Conroe:
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-128-cbc     107276.00k   122489.12k   127844.83k   128626.12k   127195.38k

Esther, no Padlock:
aes-128-cbc       5963.84k     7214.29k     7605.33k     7743.49k     7776.94k

Esther, Padlock:
aes-128-cbc      26003.26k    87183.96k   200871.63k   297751.40k   405756.91k


### openssl speed -evp aes-128-cfb
Conroe:
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-128-cfb      99261.24k   110985.26k   114055.77k   115168.26k   116121.60k

Esther, no Padlock:
aes-128-cfb       5243.37k     5557.71k     5666.05k     5689.69k     5677.25k

Esther, Padlock:
aes-128-cfb      26073.41k    85303.00k   198466.82k   297701.63k   408073.56k


### openssl speed -evp aes-128-ofb
Conroe:
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-128-ofb      99685.45k   113478.76k   116491.46k   117980.32k   119286.00k

Esther, no Padlock:
aes-128-ofb       5408.94k     5772.93k     5846.67k     5889.71k     5846.62k

Esther, Padlock:
aes-128-ofb      23559.97k    69845.67k   136543.26k   183345.83k   205428.05k


### openssl speed -evp aes-256-ecb
Conroe:
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-256-ecb      98370.93k   106100.06k   109695.91k   109817.43k   108517.62k

Esther, no Padlock:
aes-256-ecb       5182.73k     5398.88k     5491.63k     5492.18k     5518.68k

Esther, Padlock:
aes-256-ecb      37246.76k   131241.22k   309281.00k   469257.22k   613132.97k


### openssl speed -evp aes-256-cbc
Conroe:
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-256-cbc      83958.11k    95562.88k    98728.81k   100261.87k    99719.73k

Esther, no Padlock:
aes-256-cbc       4667.30k     5358.21k     5565.49k     5644.97k     5663.40k

Esther, Padlock:
aes-256-cbc      25673.08k    79441.37k   167297.53k   238768.13k   273694.72k


### openssl speed -evp aes-256-cfb
Conroe:
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-256-cfb      80436.10k    89025.50k    91642.48k    91556.71k    91328.39k

Esther, no Padlock:
aes-256-cfb       4197.27k     4417.36k     4489.47k     4488.25k     4508.33k

Esther, Padlock:
aes-256-cfb      24791.40k    76777.09k   164742.72k   238743.89k   273672.87k


### openssl speed -evp aes-256-ofb
Conroe:
type             16 bytes     64 bytes    256 bytes   1024 bytes   8192 bytes
aes-256-ofb      81480.80k    90217.26k    91674.20k    93780.64k    94752.28k

Esther, no Padlock:
aes-256-ofb       4321.87k     4556.25k     4597.96k     4628.14k     4633.94k

Esther, Padlock:
aes-256-ofb      22786.19k    68545.57k   136475.39k   180449.21k   205417.13k

Seeing that I've developed a computing style that requires little in the way of processing power, I'd like to start migrating over to all-VIA all the time. Savings would be great for power, noise, size, and price. However, one thing has stopped me, and that's playback of 1080p HD x264-encoded movies. If I were ever to build a machine and expect it to play these movies (HTPC or desktop system, running Linux) I don't think I could use a VIA machine.

So my question is: Is it possible to offload the x264 decoding to a hardware device like a video card, TV tuner, or something similar? Are there any PCI FPGA-type devices that do this? Does VIA have any plans to have on-die hardware x264 acceleration like they do with those couple of crypto algorithms? Does anyone have a VIA-based HTPC that can play these videos without lagging?

Thanks!
 
If you use media player classic - home cinema edition, you can have it use DXVA to offload the processing to your video card. however, it does not work for all files, only those encoded in certain profiles (which still is the majority of the movies and tv shows i personally have).

You would need an 8800gt/gtx, 9xxx series, or 2xxx and 3xxx series ati card

EDIT: oh wait, thats a windows thing :(
 
If you use media player classic - home cinema edition, you can have it use DXVA to offload the processing to your video card. however, it does not work for all files, only those encoded in certain profiles (which still is the majority of the movies and tv shows i personally have).

You would need an 8800gt/gtx, 9xxx series, or 2xxx and 3xxx series ati card

EDIT: oh wait, thats a windows thing :(

Even still, that points me towards the graphics card, so this is probably something I should pursue in a graphics/Linux forum. Thanks for the tip - glad to hear that it works.
 
Back
Top