eatmemory
brew install eatmemory
v1.1.0
MIT
Simple program to allocate memory from the command-line
6
30-day installs · #10085
38
90-day · #8020
58
365-day · #10646
142
★ GitHub stars · updated 3mo ago
Links
- https://github.com/julman99/eatmemory
- GitHub: julman99/eatmemory
- Brew formula source: Formula/e/eatmemory.rb
Raw metadata
{
"aliases": [],
"alternatives": [],
"build_dependencies": [],
"categories": [],
"caveats": null,
"conflicts_with": [],
"dependencies": [],
"deprecated": 0,
"deprecation_reason": null,
"desc": "Simple program to allocate memory from the command-line",
"disable_reason": null,
"disabled": 0,
"enrichment_fetched_at": "2026-06-20T23:37:14+00:00",
"first_seen": "2026-06-20T23:34:18+00:00",
"full_name": "eatmemory",
"github_default_branch": "main",
"github_last_commit_at": "2026-05-15T14:22:59Z",
"github_readme_excerpt": "# eatmemory\n\nA small command-line tool that allocates and **holds** a specified amount of\nRAM until you release it. One job, done reliably.\n\n```sh\neatmemory 1G\n```\n\n## Why eatmemory?\n\n- **Verified allocation.** Every byte is written and read back through\n volatile-qualified pointers before the tool reports success. If\n `eatmemory 1G` exits with status 0, you got 1 GB of *resident, committed*\n memory. Not a lazy kernel reservation, not a write the compiler optimized\n away.\n- **Portable.** Builds and runs on Linux (glibc and musl), macOS, Windows,\n and AIX. CI exercises **44 cross-compile targets**, including m68k, mips,\n ppc64le, riscv32/64, xtensa, and wasi, across **gcc 4 through gcc 13**.\n If your platform has a C99 compiler, eatmemory likely works on it.\n- **Tiny, zero runtime dependencies.** A single C99 binary; no shared\n libraries beyond libc. Static-link friendly.\n- **Docker-ready, multi-arch.** `docker run --rm julman99/eatmemory 1G`.\n Especially useful for exercising memory behavior *inside* containers.\n- **Simple by design.** `eatmemory \u003csize\u003e`. For comparison:\n\n ```sh\n eatmemory 1G # eatmemory\n stress-ng --vm 1 --vm-bytes 1G --vm-keep --vm-method zero-one # alternative\n ```\n\n## Use cases\n\n- **Test swap configuration.** Fill RAM, observe the system start paging.\n- **Test container memory limits.** Run inside `docker run --memory=512m`\n and confirm the OOM-killer fires where you expect.\n- **Test Kubernetes pod limits, evictions, QoS classes, and HPA.** Deploy a\n pod running `eatmemory 90%` and watch pod eviction, QoS-class behavior, or\n horizontal-pod-autoscaler triggers.\n- **Validate monitoring and alerting.** Generate memory pressure on demand\n to confirm your alerts fire on the right thresholds.\n- **Test service degradation under pressure.** Run alongside a real service\n and watch tail latency as the system starves for memory.\n- **Test autoscaling.** Trigger memory-based scaling polic",
"github_repo": "julman99/eatmemory",
"github_stars": 142,
"github_topics": [],
"homepage": "https://github.com/julman99/eatmemory",
"homepage_og_description": null,
"homepage_og_image": null,
"homepage_title": null,
"installs_30d": 6,
"installs_365d": 58,
"installs_90d": 38,
"keg_only": 0,
"keg_only_reason": null,
"last_seen": "2026-06-20T23:34:18+00:00",
"license": "MIT",
"llm_generated_at": null,
"llm_model": null,
"name": "eatmemory",
"oldnames": [],
"one_liner": null,
"optional_dependencies": [],
"rank_30d": 10085,
"rank_365d": 10646,
"rank_90d": 8020,
"raw_hash": "c06060fc525e7373",
"recommended_dependencies": [],
"revision": 0,
"ruby_source_path": "Formula/e/eatmemory.rb",
"tap": "homebrew/core",
"test_dependencies": [],
"uses_from_macos": [],
"version_head": null,
"version_stable": "1.1.0",
"versioned_formulae": [],
"why_use_this": null
}