Date: Thu, 18 Apr 2013 23:03:45 -0400
From: <jfoug@....net>
To: john-dev@...ts.openwall.com
Subject: Re: Got all dyna formats (except $1$ and $apr1$) working
with OMP
---- magnum <john.magnum@...hmail.com> wrote:
> This is without looking at any code, but could you not address this simply by bumping BLOCK_LOOPS (or equivalent) by 10 (perhaps 16) for OMP? So if a non-OMP build does 10 of them, OMP would do 160. Would that mitigate the impact you describe?
Not that easy.
I did make a quick prototype change. I change the increment value from what was computed per type, to 1440. This would make a OMP_NUM_THREADS run in only 4 loops.
This made 1 thread OMP work almost same speed as non-OMP, for 'some' dynas. However, in others, things were bad. 60%, 50% and even some slower than that (40% or so).
I THINK this is due to unicode checking, calling omp_thread_num() within many of the string functions.
I will now try to build the code to take 3 params (3 ints). So it will be start, stop and threadID as params. that way, the thread id will be available as a param, when needed. This might slow down formats overall a percent or so, but should remove that OMP overhead on a lot of the string appending functions, IF that is the problem.
Jim.