Date: Wed, 16 Sep 2015 11:31:37 +0200 From: magnum <john.magnum@...hmail.com> To: john-dev@...ts.openwall.com Subject: Re: ldr_split_line() performance regression On 2015-09-16 03:58, Solar Designer wrote: > On Wed, Sep 16, 2015 at 03:49:44AM +0200, magnum wrote: >> On 2015-09-16 02:16, Solar Designer wrote: >>> Please keep any non-trivial processing out of ldr_split_line(), or at >>> least limit it to only be done once (e.g., by using static variables). >> >> Ouch! I use to be careful with these things... but the ones for >> "Disabled formats" were really bad. Fixed now, and loading of that >> sample literally went from 2 minutes to 900 ms on my laptop... > > Thanks. > > Arguably, 900 ms is still too much for this sample. On my Pentium 3, > this command: > > time john -w=/dev/null pw-fake-unix > > takes 200 ms: > > real 0m0.215s > user 0m0.097s > sys 0m0.035s > > with non-jumbo john. I understand that jumbo has a lot more formats to > check each line against (for printing of those warnings), but perhaps > there's something else going on as well. Using -w=/dev/null it's 715 ms and using a build with -DDYNAMIC_DISABLED it's less than half: 317 ms. I have noticed that various dynamic initializations always come at top when profiling a short run that in no way involves dynamic. Some of them look very strange, like 10,000 iterations of stuff... heck, are we brute forcing digits? 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.