Skip to main content

Tool that tells your linux OS to kill this process first if you hit OOM.

Project description

# What is this?

If you have something you are working on that may accidentally consume all your RAM (read: are a data scientist), you probably want your process OOM reaped before the other ones. What you absolutely do not want is something like process that may fail in a bad state getting reaped instead.

If you install this package with,

`bash pip install oom_reap_me_first `

then do,

`python import oom_reap_me_first.auto_enable # noqa # pylint: disable=unused-import `

at the top of your, say, Jupyter notebook, the importing processes oom_score_adj will be set to 1000, which means it will (probably?) get reaped first.

This works particularly well if you [disable swap](https://graspingtech.com/disable-swap-ubuntu/), so you don’t end up in the dreaded situation of your REPL taking all the RAM then hitting disk so hard that you can’t even i-i it.

# What else should I know?

The oom_score_adj that controls what gets preferentially gets killed can be configured automatically for systemd services. If you have something that you really don’t want to get killed, you should put,

` oom score -1000 `

in the service unit definition. Alternatively, if you are not using python you can use the choom (change-OOM) command

`bash choom -p PID -n number `

See the [man page](https://man7.org/linux/man-pages/man1/choom.1.html) here.

However, I am lazy and my solution suits me better.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oom_reap_me_first-0.0.1.tar.gz (3.0 kB view details)

Uploaded Source

Built Distribution

oom_reap_me_first-0.0.1-py3-none-any.whl (3.5 kB view details)

Uploaded Python 3

File details

Details for the file oom_reap_me_first-0.0.1.tar.gz.

File metadata

  • Download URL: oom_reap_me_first-0.0.1.tar.gz
  • Upload date:
  • Size: 3.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.13

File hashes

Hashes for oom_reap_me_first-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c58fae38208315ae49711ab5e3ac69d4948b516aaabd6324b35ffdea6728afd1
MD5 0b350694d993911ce6bef40d5edadad0
BLAKE2b-256 b66f56eb1af73272f37e1fdabafdc19e639a8199fa64f26c4bc05c30a3078d51

See more details on using hashes here.

File details

Details for the file oom_reap_me_first-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for oom_reap_me_first-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ee60bd43ee181973f02cafd5db62e0e48ec6a6d1f6ddd80826fc99d068ac78a0
MD5 e89caa15277ffa6a5878d06e83c13323
BLAKE2b-256 f3dd9a57c0bd34d9c46d3bf20e513a044a70d06a3b89743465a869c7ca54ab85

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page