[Cbe-oss-dev] [patch 00/10] KSPU API + AES offloaded to SPU + testing module

Sebastian Siewior cbe-oss-dev at ml.breakpoint.cc
Fri Aug 17 06:01:05 EST 2007


This is a complete submission of $subject against current git.
Content:
 1 - required casting to retrieve private struct out of crypto API
 2 - function to retrieve private crypto struct. Herbert queued this
    already for 2.6.24.
 3 - KSPU doc
 4 - KSPU skeleton
 5 - exporting required symbols within spufs.ko
 6 - allocation of KSPU context
 7 - KSPU, PPU side implementation
 8 - KSPU, SPE side implementation
 9 - AES as KSPU & Crypto user. Providing ECB+CBC block mode
10 - testing module for AES crypto.

Herbert, I've put you on CC to consider patch 1 for inclusion. As I noticed
earlier, KSPU is a general purpose interface so it is not clever to use
crypto's infrastructure since KSPU may be used for non-crypto related
tasks. However, I included a soft limit.

Figure [1] shows performance of aes-spu in ECB mode with a transfer size
of 16 KiBb. Generic is crypto/aes.c compiled for SPU, sync means it is there
is no queue process just copy data and start the SPU, async is what is
provided by the patch series. 
Figure [2] shows the performance with different DMA transfer sizes
(smaller chunks = more transfers). Async benefits from double buffering
and more requests at a time but slower at 16 KiB due to more communication.

The pdfs are 4.6 KiB each but scalable :)

[1] http://download.breakpoint.cc/spu/spu_code_async.pdf
[2] http://download.breakpoint.cc/spu/spu_async_blocksize_aligned.pdf

sleepy Sebastian
-- 




More information about the cbe-oss-dev mailing list