1. 01 8月, 2012 1 次提交
  2. 27 6月, 2012 2 次提交
  3. 12 6月, 2012 1 次提交
    • J
      crypto: twofish - add x86_64/avx assembler implementation · 107778b5
      Johannes Goetzfried 提交于
      This patch adds a x86_64/avx assembler implementation of the Twofish block
      cipher. The implementation processes eight blocks in parallel (two 4 block
      chunk AVX operations). The table-lookups are done in general-purpose registers.
      For small blocksizes the 3way-parallel functions from the twofish-x86_64-3way
      module are called. A good performance increase is provided for blocksizes
      greater or equal to 128B.
      
      Patch has been tested with tcrypt and automated filesystem tests.
      
      Tcrypt benchmark results:
      
      Intel Core i5-2500 CPU (fam:6, model:42, step:7)
      
      twofish-avx-x86_64 vs. twofish-x86_64-3way
      128bit key:                                             (lrw:256bit)    (xts:256bit)
      size    ecb-enc ecb-dec cbc-enc cbc-dec ctr-enc ctr-dec lrw-enc lrw-dec xts-enc xts-dec
      16B     0.96x   0.97x   1.00x   0.95x   0.97x   0.97x   0.96x   0.95x   0.95x   0.98x
      64B     0.99x   0.99x   1.00x   0.99x   0.98x   0.98x   0.99x   0.98x   0.99x   0.98x
      256B    1.20x   1.21x   1.00x   1.19x   1.15x   1.14x   1.19x   1.20x   1.18x   1.19x
      1024B   1.29x   1.30x   1.00x   1.28x   1.23x   1.24x   1.26x   1.28x   1.26x   1.27x
      8192B   1.31x   1.32x   1.00x   1.31x   1.25x   1.25x   1.28x   1.29x   1.28x   1.30x
      
      256bit key:                                             (lrw:384bit)    (xts:512bit)
      size    ecb-enc ecb-dec cbc-enc cbc-dec ctr-enc ctr-dec lrw-enc lrw-dec xts-enc xts-dec
      16B     0.96x   0.96x   1.00x   0.96x   0.97x   0.98x   0.95x   0.95x   0.95x   0.96x
      64B     1.00x   0.99x   1.00x   0.98x   0.98x   1.01x   0.98x   0.98x   0.98x   0.98x
      256B    1.20x   1.21x   1.00x   1.21x   1.15x   1.15x   1.19x   1.20x   1.18x   1.19x
      1024B   1.29x   1.30x   1.00x   1.28x   1.23x   1.23x   1.26x   1.27x   1.26x   1.27x
      8192B   1.31x   1.33x   1.00x   1.31x   1.26x   1.26x   1.29x   1.29x   1.28x   1.30x
      
      twofish-avx-x86_64 vs aes-asm (8kB block):
               128bit  256bit
      ecb-enc  1.19x   1.63x
      ecb-dec  1.18x   1.62x
      cbc-enc  0.75x   1.03x
      cbc-dec  1.23x   1.67x
      ctr-enc  1.24x   1.65x
      ctr-dec  1.24x   1.65x
      lrw-enc  1.15x   1.53x
      lrw-dec  1.14x   1.52x
      xts-enc  1.16x   1.56x
      xts-dec  1.16x   1.56x
      Signed-off-by: NJohannes Goetzfried <Johannes.Goetzfried@informatik.stud.uni-erlangen.de>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      107778b5
  4. 22 3月, 2012 1 次提交
  5. 25 2月, 2012 1 次提交
  6. 14 2月, 2012 1 次提交
  7. 13 1月, 2012 1 次提交
  8. 20 12月, 2011 1 次提交
  9. 09 11月, 2011 2 次提交
    • J
      crypto: twofish-x86_64-3way - add xts support · bae6d303
      Jussi Kivilinna 提交于
      Patch adds XTS support for twofish-x86_64-3way by using xts_crypt(). Patch has
      been tested with tcrypt and automated filesystem tests.
      
      Tcrypt benchmarks results (twofish-3way/twofish-asm speed ratios):
      
      Intel Celeron T1600 (fam:6, model:15, step:13):
      
      size    xts-enc xts-dec
      16B     0.98x   1.00x
      64B     1.14x   1.15x
      256B    1.23x   1.25x
      1024B   1.26x   1.29x
      8192B   1.28x   1.30x
      
      AMD Phenom II 1055T (fam:16, model:10):
      
      size    xts-enc xts-dec
      16B     1.03x   1.03x
      64B     1.13x   1.16x
      256B    1.20x   1.20x
      1024B   1.22x   1.22x
      8192B   1.22x   1.21x
      Signed-off-by: NJussi Kivilinna <jussi.kivilinna@mbnet.fi>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      bae6d303
    • J
      crypto: twofish-x86_64-3way - add lrw support · 81559f9a
      Jussi Kivilinna 提交于
      Patch adds LRW support for twofish-x86_64-3way by using lrw_crypt(). Patch has
      been tested with tcrypt and automated filesystem tests.
      
      Tcrypt benchmarks results (twofish-3way/twofish-asm speed ratios):
      
      Intel Celeron T1600 (fam:6, model:15, step:13):
      
      size	lrw-enc	lrw-dec
      16B	0.99x	1.00x
      64B	1.17x	1.17x
      256B	1.26x	1.27x
      1024B	1.30x	1.31x
      8192B	1.31x	1.32x
      
      AMD Phenom II 1055T (fam:16, model:10):
      
      size	lrw-enc	lrw-dec
      16B	1.06x	1.01x
      64B	1.08x	1.14x
      256B	1.19x	1.20x
      1024B	1.21x	1.22x
      8192B	1.23x	1.24x
      Signed-off-by: NJussi Kivilinna <jussi.kivilinna@mbnet.fi>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      81559f9a
  10. 21 10月, 2011 3 次提交
  11. 22 9月, 2011 1 次提交