Skip to content

Conversation

@maleadt
Copy link
Collaborator

@maleadt maleadt commented Feb 11, 2026

I noticed that on my system ParallelTestRunner only ever used a single worker. This because my memory usage is:

  • Total memory: 18GiB
  • Used: 16GiB
    • Apps: 5.5GiB
    • Wired: 3.5GiB
    • Compressed: 7GiB
  • Cached: 2GiB
  • Swap: 7.5GiB

So only taking free + inactive + purgeable into account gives us 2.8G, only enough for a single worker, while adding the compressed pages brings it to 10G allowing 5 workers. AFAIU these compressed pages should be safe to ignore, as they can be swapped out. I verified here that given a 10GiB computation I can allocate a 10GiB array without killing my system (although it was a bit angry while swapping out the compressed pages).

cc @christiangnrd

It should be possible to put them in swap relatively cheaply.
@christiangnrd
Copy link
Contributor

I guess my main question is do we expect users to expect to be able to use their device while running tests? If not then this is probably fine for a test package.

@maleadt
Copy link
Collaborator Author

maleadt commented Feb 11, 2026

It doesn't kill the device, just makes it slightly sluggish while paging out stuff. I'd say that's acceptable, no?

@christiangnrd
Copy link
Contributor

Probably. And someone could always just set the # jobs manually to a value they know is safe if they need to keep using it.

@maleadt
Copy link
Collaborator Author

maleadt commented Feb 12, 2026

Yeah. I say we try this out.

@maleadt maleadt merged commit 25ac50e into main Feb 12, 2026
23 checks passed
@maleadt maleadt deleted the tb/mac_compressed branch February 12, 2026 07:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants