|
Message-ID: <1e9a6bec29e2d671ba1115ffe2dd99e6@smtp.hushmail.com> Date: Mon, 30 Mar 2015 22:50:10 +0200 From: magnum <john.magnum@...hmail.com> To: john-dev@...ts.openwall.com Subject: Re: [GSoC] John the Ripper support for PHC finalists On 2015-03-30 19:28, Agnieszka Bielec wrote: > On 2015-03-30, magnum wrote: >> On 2015-03-30 01:56, Agnieszka Bielec wrote: >>> Is it possible to change 'count' variable which is passed to crypt_all, >>> after the execution of opencl_ini_auto_setup() ? > >> Yes, well, cracker.c will use format->params.max_keys_per_crypt so if >> you change that, it will affect "count". But I'm not sure what you are >> aiming at. > > It's because pomelo is parametrized by m_cost (memmory cost) (and also > by t_cost which is less important) > the size of needed memory in bytes is: 1 << (13 + m_cost) which > is very much. I can't allocate as much memory in the __kernel function > so my funcion gets and makes computations on a __global buffor. > There is a problem with this because I'm allocating memory only once after > the tests but fmt_tests theoretically holds different pomelo hashes > parametrized by different m_cost. Here I have 2 problems with this. > 1.We need different sizes of buffor needed by a single __kernel function > execution. I can assume that in the file we have all hashes with > the same m_cost but there is still a second problem. > 2.after assumtion that in the file all hashes have this same m_cost > parameter, fmt_tests doesn't holds hashes with the same m_cost. > after opencl_init_auto_setup and autotune_run we know how much > memory is the better solution I see. As it happens, since just a week ago most OpenCL formats do not auto-tune in init() but when their reset() function is called with a NULL db argument. This happens early within self-test. And reset() is called again once, after self-tests and right before real cracking starts. But this time with a db argument. Nothing stops you from adding to Pomelo, that when reset() is called with an actual db pointer, it examines the db and adjusts its buffers and/or workgroup sizes accordingly. Would that solve your problem? The first thing you need to do is rebase on latest bleeding-jumbo, then apply changes to pomelo-opencl similar to what happened to mysqlsha1-opencl in commit ef4b3dbb. Then add whatever code you like in reset(). magnum
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.