X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=main.c;fp=main.c;h=3f52a86e9d76bb5cb3efc2dc42ba832b5f2a9ba3;hb=fb74a77a3986b7692bdcc685453e59279288f743;hp=b38b0ce5e1bbe8cb4d5427dd6184447f0eb94ab8;hpb=0d60fbb2fa5f40382fa260fd039d262bf583406d;p=matchsticks-search.git diff --git a/main.c b/main.c index b38b0ce..3f52a86 100644 --- a/main.c +++ b/main.c @@ -263,6 +263,8 @@ static void multicore_outer_iteration(int i, AdjWord min) { } static void mc_iterate_worker(void) { + static time_t lastprint; + for (;;) { mc_rwvsetup_outer(); ssize_t r = readv(mc_work[0], mc_iov, mc_niovs); @@ -272,8 +274,12 @@ static void mc_iterate_worker(void) { bool ok = maxhamweight_ok(); if (!ok) continue; - ok = preconsider_ok(multicore_iteration_boundary, 1); - progress_eol(); + time_t now = time(0); + bool doprint = now != lastprint; + lastprint = now; + + ok = preconsider_ok(multicore_iteration_boundary, doprint); + if (doprint) progress_eol(); if (!ok) continue; /* stop iterate_recurse from trying to run multicore_outer_iteration */