Memory Pressure

How RawCull Handles Memory Pressure

RawCull watches memory in two ways:

  1. Its own safety line (85%) to warn you early
  2. macOS memory pressure signals (Normal, Warning, Critical)

These are connected, but not identical:

  • The 85% line is RawCull’s internal rule of thumb.
  • Normal / Warning / Critical comes directly from macOS and is the real system status.

1) What the memory numbers mean

In the Memory tab, RawCull shows:

  • Total Memory: your Mac’s installed unified memory
  • Used Memory: estimated system memory in active use
  • App Memory Usage: RawCull’s own footprint

How “Used Memory” is calculated

RawCull builds this from system VM stats (wired + active + compressed memory), then caps it at total physical memory.
So this is a practical system-usage estimate, not “free memory.”

How “App Memory Usage” is calculated

RawCull uses the kernel-reported process footprint (phys_footprint) to show the app’s own RAM usage.


2) The 85% line vs real pressure events

RawCull’s early-warning line (85%)

RawCull sets a threshold at:

total memory × 0.85

Example on a 16 GB Mac:

16 × 0.85 = 13.6 GB

If used memory crosses that line, RawCull can show a soft warning even if macOS still reports Normal.

macOS pressure levels

RawCull also listens for real system pressure events:

  • Normal: no active pressure
  • Warning: pressure is rising
  • Critical: pressure is severe

These levels are shown in Memory Tab and drive automatic cache behavior.


3) Cache limits (what Settings controls)

RawCull uses two memory caches:

  1. Main cache
  2. Grid thumbnail cache

Default values:

  • Main cache: 10000 MB
  • Grid cache: 400 MB

RawCull mainly limits caches by total byte cost, not item count, so eviction is based on memory impact first.


4) Why you may see different “bytes per pixel” values

You may notice both of these in the UI/math:

  • 6 bytes/pixel: conservative cache-cost accounting
  • 4 bytes/pixel: approximate real RGBA image memory

For grid estimates, RawCull also adds a small safety margin (~10%).


5) What happens when memory pressure appears

A) Soft warning (early warning)

If usage crosses 85% but macOS is still Normal, RawCull shows a soft warning in the main UI.

B) Real macOS pressure

When macOS sends pressure events, RawCull reacts automatically:

  • Warning: reduces cache limits to ~60% of current values
  • Critical: clears caches immediately and temporarily drops main cache to 50 MB
  • Back to Normal: restores your saved cache settings

So, during real pressure, RawCull prioritizes system stability and then returns to your configured limits once pressure passes.


6) Where you see this in the app

  • Memory Tab

    • Total memory
    • Used memory
    • RawCull app memory
    • 85% threshold marker
    • Current macOS pressure level
  • Cache Settings Tab

    • Estimated memory impact of your cache choices
    • Warnings when settings approach the safe zone
  • Main window

    • Pressure warning overlay for real kernel pressure
    • Soft warning when RawCull crosses 85% before macOS escalates

Practical takeaway

If you want fewer pressure warnings:

  • Lower Main cache size
  • Lower Grid cache size
  • Keep projected usage comfortably below the 85% line

RawCull is designed to warn early, react quickly under real pressure, and recover automatically when memory conditions improve.


Last modified April 25, 2026: Some updates (f990662)