Whonix-Workstation / Whonix-Gateway - Version 15 - Non-Qubes-Whonix - increase default RAM?

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.


The only available data on how much RAM users of Whonix have available:

10 % to 15 % (rounded) of Whonix users have only 4 GB RAM.


Questions:

  • 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.


Previous discussions:

2 Likes

So for KVM GW is 512, WS was bumped to 2 after that poll.

RAM assignment is on demand and not ouright.


Ideas. We can ship GW to run on desktopless mode.

Switch GW or both to Enlightenment DE. It’s even more barebones than xfce, but may have less functionality depending on what we need.

1 Like

That would be a grave usability regression.

Btw desktop environment (DE) isn’t only about RAM. It’s also about other factors such as usability, future-proofness, and in future it will probably also be about which one supports wayland.

For DE change suggestions we would better use a separate forum thread. A DE change is a labor intense, big change while increasing default RAM is a very minor build script modification.

1 Like

I am sensing we hit a wall with how much we can raise the RAM limit and that’s why I’m looking at other options. Will post a thread about some DE ideas soon.

1 Like

It would depend on individual machine specs, and choice of hypervisor, but I have found that 1024KB Ram for The Whonix Gateway and also for other gateway-type virtual machines, is usually more than enough. As a matter of fact, I can get away with 768MB for the Whonix Gateway with no issues. Workstations would typically need more, at least 2GB, maybe a bit less would be reasonable depending on what you are working on, or if you need media, etc

1 Like