|
Message-ID: <CAKtfLcshYiZYwCtghz95DXmwgatNSUOV69fqCyBDYhZOBkqYPw@mail.gmail.com> Date: Tue, 21 Aug 2012 09:51:52 -0700 From: Alain Espinosa <alainesp@...il.com> To: john-dev <john-dev@...ts.openwall.com> Subject: OpenCL optimization trick for md* Hi. Share some small OpenCL optimization i will use in next Hash Suite. Work in nt_kernel.cl, md4_kernel.cl, md5_kernel.cl, sha1_kernel.cl and possible others. In nt_kernel.cl change all round 1 steps: a += (d ^ (b & (c ^ d))) + nt_buffer[4] ; a = rotate(a , 3u ); by a += bitselect(d, c, b) + nt_buffer[4] ; a = rotate(a , 3u ); Work in nt_kernel.cl and md4_kernel.cl but not sure if it is an improvement. In nt_kernel.cl change all round 2 steps: a += ((b & (c | d)) | (c & d)) + nt_buffer[0] + SQRT_2; a = rotate(a , 3u ); by a += bitselect(bitselect(b,c,d), bitselect(d,b,c), b) + nt_buffer[0] + SQRT_2; a = rotate(a , 3u ); saludos, alain
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.