Herbert, On Thu, Sep 01, 2011 at 12:15:34PM +1000, Herbert Xu wrote: > Nikos Mavrogiannopoulos <nmav@xxxxxxxxxx> wrote: > > > > Given my benchmarks have no issues, it is not apparent to me why one > > should use AF_ALG instead of cryptodev. I do not know though why AF_ALG > > performs so poor. I'd speculate by blaming it on the usage of the socket > > API and the number of system calls required. > > The target usage of AF_ALG is hardware offload devices that cannot > be directly used in user-space, not software crypto on implementations > such as AESNI/Padlock. > > Going through the kernel to use something like AESNI/Padlock or > software crypto is insane. > > Given the intended target case, your numbers are pretty much > meaningless as cryptodev's performance can be easily beaten > by a pure user-space implementation. I ran the benchmarks on my OpenRD Ultimate, an embedded device equipped with the Marvell Kirkwood SoC, which also contains the CESA crypto engine. Hopefully a less "insane" use-case, also from your point of view. Here are the results of the "fulltest", i.e. init, AES128 and deinit measured as a whole: chunksize af_alg cryptodev (100 * cryptodev / af_alg) -------------------------------------------------------------------------- 512 4.169 MB/s 7.113 MB/s 171 % 1024 7.904 MB/s 12.957 MB/s 164 % 2048 13.163 MB/s 19.683 MB/s 150 % 4096 20.218 MB/s 26.960 MB/s 133 % 8192 27.539 MB/s 34.373 MB/s 125 % 16384 33.730 MB/s 39.997 MB/s 119 % 32768 37.399 MB/s 42.727 MB/s 114 % 65536 40.004 MB/s 44.660 MB/s 112 % although I'm quite sure there's a reason why these values are meaningless as well, I would like to point out that cryptodev-linux has outperformed AF_ALG in every situation they have been compared so far. Greetings, Phil -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html