Current Whonix system requirements for Non-Qubes-Whonix hosts is 4 GB.
(That is for with Whonix with XFCE. Not for Whonix CLI. Though, that wiki page doesn’t really spell that out.)
Current Default RAM settings for downloadable Non-Qubes-Whonix builds:
- Whonix-Gateway: 512 MB
- Whonix-Workstation: 768 MB
Non-Qubes-Whonix requires RAM as per the following:
- 768 MB (workstation RAM)
- 512 MB (gateway RAM)
- 16 MB (gateway video RAM)
- 128 MB (workstation video RAM)
Leaves the host with only around 2576 MB RAM. That’s not much. And not even including any multiple Whonix-Workstation’s. If users are using heavy desktop environments such as KDE, they need at least 2 GB RAM just only for that. If they then also use a host browser or run apt (kernel) upgrades, their system might swap soon and become slow.
Non-Qubes-Whonix dynamic / intelligent RAM assignment is currently non-existing due to a number of issues
- There is no Whonix-Host yet. Therefore we can not be more clever an automatically assign more RAM to users VMs if available.
- Memory de-duplication had to be disabled due to security issues.
- Desktop environments realistically available for Whonix (from packages.debian.org, OK usability, …) require more RAM nowadays than in past.
This leads to some issues.
- Therefore we require to use a hack for Whonix-Gateway: swap - swap file - Whonix-Gateway freezing during apt-get dist-upgrade - encrypted swap-file-creator - This makes Whonix-Gateway boot and upgrade slower.
- Opening too many Tor Browser tabs can already make a VM slow or freeze.
The only available data on how much RAM users of Whonix have available:
- User Poll - How much RAM do you have?
- Therefore cannot autostart i2p by default.
10 % to 15 % (rounded) of Whonix users have only 4 GB RAM.
- Should default RAM for Whonix-Workstation be increased? To what amount?
- Should default RAM for Whonix-Gateway be increased? To what amount?
- Would that be non-ideal for users with only 4 GB RAM?
- Should we de-prioritize users who have only 4 GB RAM?
- How much RAM should be the new requirement for Whonix system requirements?
Qubes / Qubes-Whonix is unrelated. This is because:
Qubes / Qubes-Whonix manages RAM far more efficiently.
- Simplified said, “There is no GUI running inside VM.” I mean by that, no “full X server”, lightdm, XFCE is running inside a VM. XFCE desktop environment packages aren’t even installed by default in VMs. X running inside Qubes VMs is connected to X running in dom0. The de-duplication of that saves a ton of RAM.
- Qubes RAM management isn’t as static as “if VM is started, assign it to VM in full”. It dynamically assigns RAM. I.e. VMs that are just auto started but idle need far less RAM. Not sure this might be called memory ballooning.
Therefore Qubes / Qubes-Whonix cannot be compared much to Non-Qubes-Whonix as far as RAM requirements are going.