Skip to content
This repository has been archived by the owner on Aug 20, 2021. It is now read-only.

prove-all: configurable memory headroom #409

Open
wants to merge 4 commits into
base: master
Choose a base branch
from
Open

prove-all: configurable memory headroom #409

wants to merge 4 commits into from

Conversation

d-xo
Copy link
Contributor

@d-xo d-xo commented Apr 21, 2020

Proofs on CI are getting killed when many large specs (e.g. mint in k-uniswap-v2) are being run all at once, this introduces a configurable parameter (MEMORY_HEADROOM), that ensures that parallel will not start a new job if less than MEMORY_HEADROOM free RAM is available.

@d-xo d-xo requested a review from a team April 21, 2020 09:45
Copy link
Contributor

@asymmetric asymmetric left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM apart from a couple nits, but can we document this in the README? Maybe in the Limits section.

libexec/klab-prove-all Outdated Show resolved Hide resolved
libexec/klab-prove-all Outdated Show resolved Hide resolved
@asymmetric
Copy link
Contributor

Oh, and it's not clear to me if --retries is necessary when a job is killed by parallel.

If less than size bytes are free, no more jobs will be started. If less than 50%
size bytes are free, the youngest job will be killed, and put back on the queue to be run later.

--retries must be set to determine how many times GNU parallel should retry a given job.

@d-xo
Copy link
Contributor Author

d-xo commented Apr 21, 2020

nice catch re: --retries, and it seems as though there are some CI failures with this change, wonder if that's the reason.

However, I'm not sure if --retries is the behaviour that we want:

--retries n

If a job fails, retry it on another computer on which it has not failed. Do this n times. If there are fewer than n computers in --sshlogin GNU parallel will re-use all the computers. This is useful if some jobs fail for no apparent reason (such as network failure).

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants