Export to GitHub

engine-cuda - benchmarkVersion011.wiki


Table of contents

PC Configuration

| CPU | Intel Core2Duo E8400 | |:--------|:---------------------| | GPU | nVIDIA GeForce GTX275 | | RAM | 4GB | | Motherboard Chipset | Intel P45 | | Operating System | GNU/Linux - Ubuntu 10.04.1 LTS - x86_64 |

The test is executed ad described into the page usageExample of this wiki.

AES ECB encryption performance

http://engine-cuda.googlecode.com/svn/wiki/aes-ecb-encrypt-011.png

| blocksize | aes-128-ecb-gpu | aes-128-ecb-cpu | aes-192-ecb-gpu | aes-192-ecb-cpu | aes-256-ecb-gpu | aes-256-ecb-cpu | |:--------------|:--------------------|:--------------------|:--------------------|:--------------------|:--------------------|:--------------------| | 16 | 461557.33 | 177335186.62 | 431845.33 | 153509736.45 | 409685.62 | 134258349.16 | | 64 | 1543253.33 | 196224832.00 | 1415722.67 | 166770538.67 | 1314069.33 | 145240277.33 | | 256 | 6328936.45 | 202168576.00 | 5747968.00 | 170455125.33 | 5294592.00 | 148186282.67 | | 1024 | 24163328.00 | 203839829.33 | 21944320.00 | 171350357.33 | 20104533.33 | 148682069.33 | | 2048 | 47718400.00 | 204014933.33 | 43420330.67 | 171421013.33 | 39860906.67 | 149554517.33 | | 4096 | 92317013.33 | 203968512.00 | 84261546.67 | 171361621.33 | 77522261.33 | 148844544.00 | | 8192 | 173651285.33 | 204062720.00 | 159741260.20 | 171414869.33 | 147133781.33 | 148750336.00 | | 16384 | 307691520.00 | 204106410.67 | 285936417.39 | 172015561.20 | 265895936.00 | 148815872.00 | | 32768 | 463175680.00 | 203860650.67 | 430959475.59 | 172070357.19 | 401840888.29 | 149312853.33 | | 65536 | 658658645.33 | 203707733.33 | 616739788.63 | 172234745.15 | 575646378.67 | 149531306.67 | | 131072 | 804519936.00 | 203729578.67 | 754431143.81 | 172278581.94 | 704555690.67 | 149553152.00 | | 262144 | 928112503.01 | 204454785.28 | 868657834.67 | 172278581.94 | 822465840.80 | 149596842.67 | | 524288 | 997023935.79 | 205140875.17 | 936879860.87 | 171791701.33 | 884977102.34 | 149596842.67 | | 1048576 | 1037003087.63 | 203773269.33 | 974930193.98 | 171966464.00 | 919601152.00 | 150097166.56 | | 2097152 | 967486122.67 | 204122794.67 | 916272451.01 | 171966464.00 | 867521877.33 | 149596842.67 | | 4194304 | 824879786.67 | 204122794.67 | 788529152.00 | 171966464.00 | 754974720.00 | 149596842.67 | | 8388608 | 768955733.33 | 203444645.85 | 740993706.67 | 171083452.63 | 710235477.33 | 149008168.42 |

The "numbers" in the column "blocksize" are in bytes.

All other "numbers" are in bytes per second processed.

AES ECB decryption performance

http://engine-cuda.googlecode.com/svn/wiki/aes-ecb-decrypt-011.png

| blocksize | aes-128-ecb-gpu | aes-128-ecb-cpu | aes-192-ecb-gpu | aes-192-ecb-cpu | aes-256-ecb-gpu | aes-256-ecb-cpu | |:--------------|:--------------------|:--------------------|:--------------------|:--------------------|:--------------------|:--------------------| | 16 | 452018.73 | 165531943.81 | 422010.67 | 144689942.47 | 401424.00 | 127585300.33 | | 64 | 1532125.75 | 186063232.00 | 1400234.67 | 159375946.49 | 1304554.67 | 139123820.74 | | 256 | 6383903.68 | 191781205.33 | 5783808.00 | 163584770.57 | 5346804.01 | 141921877.33 | | 1024 | 24207360.00 | 193293312.00 | 22025931.77 | 164669816.72 | 20215951.84 | 142717610.67 | | 2048 | 47874730.67 | 193283413.33 | 43639523.75 | 164488647.49 | 40081894.31 | 143484245.33 | | 4096 | 92680192.00 | 193552384.00 | 84698156.52 | 164760572.58 | 77992497.66 | 143537493.33 | | 8192 | 174445909.33 | 193639765.33 | 160204286.29 | 164724955.18 | 148031357.86 | 143929878.26 | | 16384 | 309073237.33 | 193664341.33 | 286544652.84 | 164640021.40 | 267426333.11 | 143844944.48 | | 32768 | 463787349.33 | 193669802.67 | 430477270.90 | 164552347.83 | 401862806.69 | 143696995.32 | | 65536 | 659357696.00 | 193702570.67 | 616257583.95 | 164563307.02 | 578294924.41 | 143631240.13 | | 131072 | 803340288.00 | 193724416.00 | 752107793.98 | 164058453.33 | 705333939.80 | 143653158.53 | | 262144 | 924232362.67 | 194372323.75 | 867442386.62 | 164102144.00 | 817117752.51 | 143218005.33 | | 524288 | 991062132.44 | 194459997.32 | 927989760.00 | 164102144.00 | 881085336.91 | 143305386.67 | | 1048576 | 1031391978.60 | 193986560.00 | 968968390.64 | 164826327.76 | 916364243.48 | 143784668.90 | | 2097152 | 959796565.33 | 194284650.17 | 909701051.51 | 164276906.67 | 866306748.99 | 143784668.90 | | 4194304 | 824833027.42 | 194336085.33 | 782936746.67 | 163883401.32 | 752178517.33 | 143526017.28 | | 8388608 | 768955733.33 | 193583261.54 | 737860837.46 | 163883401.32 | 706999737.79 | 143083280.27 |

The "numbers" in the column "blocksize" are in bytes.

All other "numbers" are in bytes per second processed.

AES CBC encryption performance

Now encryption for AES CBC mode are computed by the cpu.

Since the CBC mode needs the cipher texts of each previous step to process the next step, and so it isn't possible to begin the encryption of a block until its previous block has been encrypted, we can't hope to do parallel processing during the encryption stage of this mode.

If you want you can re-enable it on the configure command line.

AES CBC decryption performance

http://engine-cuda.googlecode.com/svn/wiki/aes-cbc-decrypt-011.png

| blocksize | aes-128-cbc-gpu | aes-128-cbc-cpu | aes-192-cbc-gpu | aes-192-cbc-cpu | aes-256-cbc-gpu | aes-256-cbc-cpu | |:--------------|:--------------------|:--------------------|:--------------------|:--------------------|:--------------------|:--------------------| | 16 | 412293.33 | 100462753.18 | 387722.67 | 91504957.86 | 369968.00 | 84898734.45 | | 64 | 1088554.67 | 160217706.67 | 978304.00 | 139517120.00 | 902185.95 | 124445141.33 | | 256 | 4860416.00 | 188543744.00 | 4392497.66 | 161079381.33 | 4045484.95 | 140701013.33 | | 1024 | 19514563.21 | 196457472.00 | 17658349.16 | 167698090.67 | 16270298.33 | 145712810.67 | | 2048 | 38742817.39 | 197930325.33 | 35076280.94 | 168918357.33 | 32328947.16 | 146723498.67 | | 4096 | 75663668.23 | 199110656.00 | 68618274.25 | 169619456.00 | 63381147.83 | 147304448.00 | | 8192 | 142225723.08 | 199524352.00 | 129600727.76 | 169915733.33 | 120444318.39 | 147524266.67 | | 16384 | 261206988.63 | 199682730.67 | 239787237.46 | 169792853.33 | 223989554.52 | 147592533.33 | | 32768 | 374289466.22 | 200048640.00 | 340436505.69 | 169443328.00 | 313893329.77 | 147554304.00 | | 65536 | 522797549.16 | 200146944.00 | 476045613.38 | 169454250.67 | 437491157.19 | 148058755.85 | | 131072 | 581495010.03 | 200146944.00 | 529855272.24 | 169476096.00 | 469272829.43 | 148080674.25 | | 262144 | 666582218.06 | 200190634.67 | 612487620.07 | 169519786.67 | 544891290.97 | 148080674.25 | | 524288 | 737510143.14 | 200278016.00 | 679470234.11 | 169519786.67 | 602843526.42 | 147674453.33 | | 1048576 | 831145525.08 | 200278016.00 | 769774020.07 | 169519786.67 | 693458261.33 | 147849216.00 | | 2097152 | 837462698.67 | 199961004.65 | 790302582.55 | 169304962.13 | 724216490.67 | 148198741.33 | | 4194304 | 763363328.00 | 199993303.31 | 725614592.00 | 169438770.86 | 685069653.33 | 148694389.30 | | 8388608 | 735401301.33 | 199333259.41 | 702302065.12 | 168879567.00 | 668859109.63 | 147706386.71 |

The "numbers" in the column "blocksize" are in bytes.

All other "numbers" are in bytes per second processed.