From: Jens Steube Date: Wed, 25 May 2016 22:51:11 +0000 (+0200) Subject: Make it a real balancing loop X-Git-Tag: v3.00~144 X-Git-Url: https://www.flypig.org.uk/git/?a=commitdiff_plain;h=ca8bb56404db154929c789bfd53aa324152535e5;p=hashcat.git Make it a real balancing loop --- diff --git a/src/hashcat.c b/src/hashcat.c index 062a8a8..41c70d0 100644 --- a/src/hashcat.c +++ b/src/hashcat.c @@ -2975,6 +2975,8 @@ static void autotune (hc_device_param_t *device_param) exec_ms_pre_final = MIN (exec_ms_pre_final, exec_ms_pre_final_v); } + u32 diff = kernel_loops - kernel_accel; + if ((kernel_loops_min < kernel_loops_max) && (kernel_accel_min < kernel_accel_max)) { for (u32 f = 2; f < 1024; f++) @@ -2985,6 +2987,10 @@ static void autotune (hc_device_param_t *device_param) if (kernel_accel_try > kernel_accel_max) break; if (kernel_loops_try < kernel_loops_min) break; + u32 diff_new = kernel_loops_try - kernel_accel_try; + + if (diff_new > diff) break; + double exec_ms = try_run (device_param, kernel_accel_try, kernel_loops_try); for (int i = 0; i < VERIFIER_CNT; i++)