[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [creduce-dev] halfempty algorithm for creduce?



Thanks Vegard! This is very useful to know.

I'll just add that the top-level result here, where C-Reduce produces a smaller final output, but takes longer to do it, is basically the entire point of C-Reduce. We spent a lot of effort making it aggressive, and quite a lot less effort making it fast.

John



On 6/14/19 12:37 AM, Vegard Nossum wrote:
I did a creduce vs. halfempty benchmark at some point. These were my results:

"""
Same input (739 bytes C++), ~same test script, 1 vs 32 threads (on 32 cores).

Halfempty speedup = ~2.7 (-63%),
creduce speedup = ~8.7 (-89%).

at 32 cores the two programs were within 8 seconds of each other (!),
whereas on 1 core, halfempty took 7m27 and creduce took 22m57

The final file sizes were:

460 bytes for halfempty,
317 for c-reduce
"""

File dump from back then at:
https://gist.github.com/vegard/e79b96cefffbfb753da17c4646132fab


Vegard

On Thu, 13 Jun 2019 at 22:57, Nico Weber <thakis@chromium.org> wrote:

Hi,

creduce often takes more than an hour to run, with most cores being idle. https://github.com/googleprojectzero/halfempty is an approach to doing delta debugging in parallel. Could that approach be implemented in creduce as well?

Thanks,
Nico