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

Re: [creduce-bugs] creduce crash



John,

Looks like this is the case.
My machine has 80 cores, so I'm running in 80 threads typically. But in this case I hit the memory limit, which typically doesn't happen.

The solution with meaningful assertion looks good to me.

Dmitry.


> Hello Dmitry,

> This is a new one for us!

> It appears that C-Reduce isn't testing for the case where fork fails, and that must be what is happening for you.
> We can fix this oversight but the fact remains that if you are overloading your machine to the point where a fork cannot succeed, then you should back off significantly on the level of parallelism.
> John

On Tue, Apr 25, 2017 at 2:55 PM, Dmitry Babokin <babokin@gmail.com> wrote:
When running creduce in 80 threads it crashes with the following message:

Use of uninitialized value $pid in numeric ge (>=) at /usr/local/bin/creduce line 449.
Use of uninitialized value $pid in numeric eq (==) at /usr/local/bin/creduce line 450.

I use creduce top of the trunk from github - creduce 2.6.0 (b02c375).
If I run with default 4 threads reduction succeeds, but for me runnning in 80 threads in more typical usage case, so would be nice to fix it.

To run reproducer in the attachement, build latest gcc and latest clang, edit path in test.sh, and run:
>creduce --n 80 test.sh func.cpp