Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sat, 2 May 2015 06:14:05 +0200
From: Agnieszka Bielec <bielecagnieszka8@...il.com>
To: john-dev@...ts.openwall.com
Subject: Re: [GSoC] John the Ripper support for PHC finalists

I made interleaving for no-SIMD, SSE2 and AVX2 version, the speed for
costs 2,2 and 0,0 is slightly better but for costs 6,6 and 8,8 is
worse, so I'm not sure if I did everything correctly.
Maybe it's because we have bigger gaps between chunks of data in memory
I uploaded my code on the branch "interleaving"
I'm including results:

well SSE2 interleaving (I forgot to change algorithm_name to "SSE2")

a@...l:~/int/run$ ./john --test --format=pomelo --cost=2:2,2:2
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     94208 c/s real, 11776 c/s virtual
Only one salt:  94208 c/s real, 11761 c/s virtual

a@...l:~/int/run$ ./john --test --format=pomelo --cost=2:2,2:2
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     93275 c/s real, 11776 c/s virtual
Only one salt:  94208 c/s real, 11761 c/s virtual


a@...l:~/int/run$ ./john --test --format=pomelo --cost=0:0,0:0
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     853504 c/s real, 106821 c/s virtual
Only one salt:  846848 c/s real, 105988 c/s virtual

a@...l:~/int/run$ ./john --test --format=pomelo --cost=0:0,0:0
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     853760 c/s real, 106853 c/s virtual
Only one salt:  846848 c/s real, 105988 c/s virtual

a@...l:~/int/run$ ./john --test --format=pomelo --cost=6:6,6:6
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     297 c/s real, 38.4 c/s virtual
Only one salt:  302 c/s real, 39.0 c/s virtual

a@...l:~/int/run$ ./john --test --format=pomelo --cost=6:6,6:6
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     302 c/s real, 40.0 c/s virtual
Only one salt:  302 c/s real, 39.6 c/s virtual

well SSE2

a@...l:~/jtr2/run$ ./john --test --format=pomelo --cost=2:2,2:2
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     91008 c/s real, 11376 c/s virtual
Only one salt:  90880 c/s real, 11374 c/s virtual

a@...l:~/jtr2/run$ ./john --test --format=pomelo --cost=2:2,2:2
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     91008 c/s real, 11376 c/s virtual
Only one salt:  90880 c/s real, 11360 c/s virtual

a@...l:~/jtr2/run$ ./john --test --format=pomelo --cost=0:0,0:0
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     873984 c/s real, 109384 c/s virtual
Only one salt:  866688 c/s real, 108471 c/s virtual

a@...l:~/jtr2/run$ ./john --test --format=pomelo --cost=0:0,0:0
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     875648 c/s real, 109730 c/s virtual
Only one salt:  868096 c/s real, 108512 c/s virtual

a@...l:~/jtr2/run$ ./john --test --format=pomelo --cost=6:6,6:6
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     362 c/s real, 45.6 c/s virtual
Only one salt:  362 c/s real, 45.6 c/s virtual

a@...l:~/jtr2/run$ ./john --test --format=pomelo --cost=6:6,6:6
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     365 c/s real, 46.0 c/s virtual
Only one salt:  365 c/s real, 46.0 c/s virtual

well AVX2 interleaving

a@...l:~/int/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     1747K c/s real, 219593 c/s virtual
Only one salt:  1750K c/s real, 218816 c/s virtual

a@...l:~/int/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     1775K c/s real, 222229 c/s virtual
Only one salt:  1748K c/s real, 218833 c/s virtual

a@...l:~/int/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     186880 c/s real, 23360 c/s virtual
Only one salt:  186880 c/s real, 23330 c/s virtual

a@...l:~/int/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     185344 c/s real, 23196 c/s virtual
Only one salt:  185344 c/s real, 23196 c/s virtual

a@...l:~/int/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     249 c/s real, 35.2 c/s virtual
Only one salt:  246 c/s real, 34.2 c/s virtual

a@...l:~/int/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     250 c/s real, 34.9 c/s virtual
Only one salt:  249 c/s real, 35.1 c/s virtual

a@...l:~/int/run$ ./john --format=pomelo --test --cost=8:8,8:8
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 8, cost 2 (r) of 8
Many salts:     7.8 c/s real, 1.0 c/s virtual
Only one salt:  7.7 c/s real, 1.0 c/s virtual

well AVX2

a@...l:~/jtr2/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     1712K c/s real, 214347 c/s virtual
Only one salt:  1686K c/s real, 211079 c/s virtual

a@...l:~/jtr2/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     1709K c/s real, 214011 c/s virtual
Only one salt:  1683K c/s real, 210647 c/s virtual

a@...l:~/jtr2/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     183168 c/s real, 22896 c/s virtual
Only one salt:  182784 c/s real, 22876 c/s virtual

a@...l:~/jtr2/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     183168 c/s real, 22924 c/s virtual
Only one salt:  182784 c/s real, 22876 c/s virtual

a@...l:~/jtr2/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     640 c/s real, 80.6 c/s virtual
Only one salt:  645 c/s real, 80.7 c/s virtual

a@...l:~/jtr2/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     640 c/s real, 80.2 c/s virtual
Only one salt:  640 c/s real, 80.2 c/s virtual

my laptop interleaving no SSE, no AVX2
none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     130688 c/s real, 66677 c/s virtual
Only one salt:  135040 c/s real, 67520 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     128576 c/s real, 65600 c/s virtual
Only one salt:  133824 c/s real, 66912 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     12736 c/s real, 6432 c/s virtual
Only one salt:  12608 c/s real, 6400 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     12352 c/s real, 6302 c/s virtual
Only one salt:  12480 c/s real, 6335 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     46.0 c/s real, 23.1 c/s virtual
Only one salt:  46.0 c/s real, 23.1 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     45.3 c/s real, 23.0 c/s virtual
Only one salt:  46.0 c/s real, 23.1 c/s virtual

a@...l:~/jtr2/run$ ./john --format=pomelo --test --cost=8:8,8:8
Will run 8 OpenMP threads
Benchmarking: POMELO, Generic pomelo [AVX2]... (8xOMP) DONE
Speed for cost 1 (N) of 8, cost 2 (r) of 8
Many salts:     11.5 c/s real, 1.4 c/s virtual
Only one salt:  11.5 c/s real, 1.4 c/s virtual

my laptop no-sse and no-svx2 interleaving

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     130688 c/s real, 66677 c/s virtual
Only one salt:  135040 c/s real, 67520 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     128576 c/s real, 65600 c/s virtual
Only one salt:  133824 c/s real, 66912 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     12736 c/s real, 6432 c/s virtual
Only one salt:  12608 c/s real, 6400 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     12352 c/s real, 6302 c/s virtual
Only one salt:  12480 c/s real, 6335 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     46.0 c/s real, 23.1 c/s virtual
Only one salt:  46.0 c/s real, 23.1 c/s virtual

none@...e:~/Desktop/komp/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     45.3 c/s real, 23.0 c/s virtual
Only one salt:  46.0 c/s real, 23.1 c/s virtual


my laptop no-sse and no-svx2

none@...e:~/Desktop/dbg/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     133024 c/s real, 67524 c/s virtual
Only one salt:  138112 c/s real, 69403 c/s virtual

none@...e:~/Desktop/dbg/run$ ./john --format=pomelo --test --cost=0:0,0:0
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 0, cost 2 (r) of 0
Many salts:     130816 c/s real, 66742 c/s virtual
Only one salt:  135456 c/s real, 67728 c/s virtual

none@...e:~/Desktop/dbg/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     12448 c/s real, 6351 c/s virtual
Only one salt:  12928 c/s real, 6431 c/s virtual

none@...e:~/Desktop/dbg/run$ ./john --format=pomelo --test --cost=2:2,2:2
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 2, cost 2 (r) of 2
Many salts:     12320 c/s real, 6317 c/s virtual
Only one salt:  12960 c/s real, 6480 c/s virtual

none@...e:~/Desktop/dbg/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     48.4 c/s real, 26.0 c/s virtual
Only one salt:  52.4 c/s real, 26.2 c/s virtual

none@...e:~/Desktop/dbg/run$ ./john --format=pomelo --test --cost=6:6,6:6
Will run 2 OpenMP threads
Benchmarking: POMELO, Generic pomelo []... (2xOMP) DONE
Speed for cost 1 (N) of 6, cost 2 (r) of 6
Many salts:     48.4 c/s real, 24.8 c/s virtual
Only one salt:  48.4 c/s real, 24.7 c/s virtual

thanks

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ