I think the Level 1 forums are one of the finest places to discuss these topics
and get feedback, where there is a lot of concentrated interest here in
virtualization as a tool for empowering people. This first post may seem
somewhat abstract but I think it is good to lay out some high level ideas that
we can discuss before getting into the details of concrete implementations.
OK, what is this about?
A hardware and software design concept that represents a leap forward in
professional mobile computing, in a nutshell: secure, easy and performant GPU
enabled virtualization on a mobile platform.
Why?
It is simple:
-
We need a Free Software base operating system that respects our rights.
Current proprietary operating systems are just not compatible with privacy,
security and freedom. Lately they are not even stable or well designed, and
are now focused on shoveling as many subscription based products of dubious
utility and quality in the users face as possible. Professionals are losing
patience fighting against this deluge of mediocrity, not to mention time and
money.And frankly these proprietary operating systems have proven time and again
that they cannot be trusted with the bare metal and unrestricted access to
the Internet. We can be sure data will be lost and/or exfiltrated. -
While there is now more high quality Free Software available for all needs
than ever before, many professionals still require compatibility with some
number of proprietary programs.Example 1: As long as you need to view and edit office documents from people
who use that proprietary office suite, you will likely need to run a copy
of that proprietary office suite. Free Software office suites have long
struggled to achieve compatibility with the obtuse file formats used by
that proprietary office suite, based on fake standards which the same
proprietary office suite does not even abide by.The efforts made in the last 20 years to reverse engineer and reimplement
the actual non compliant and ever changing behavior of that proprietary
office suite so that documents look the same and do not get mangled on save
have been enormous, yet the Free Software office suites are perpetually
missing that “last 5%” of compatibility.Example 2: In many industries, there are deeply entrenched incumbent
software providers whose proprietary product represents a de facto standard.
Generally the interoperability with Free Software programs is low to
nonexistent due to a variety technical and nontechnical factors. Many of
these programs are tied to a single proprietary operating system. In these
cases, there is just no practical way to avoid these proprietary products
and the proprietary operating system they are tied to for people working in
certain industries. -
Historically virtualization of these proprietary programs on mobile
platforms has been… sometimes ok. Many times bad or just impossible.
Almost never performant or pleasant to use due to higher latency. Why is
that? Well… GPUs. Most professional design and engineering software, even
office suites and web browsers, depends on GPUs for rendering and
acceleration of various tasks such as media encode and decode.When software rendering works at all, it is almost always slow. The other
half of the equation is getting those rendered frames from the virtual
machine onto the physical display. The historical solutions have suffered
from poor throughput and latency.
So as a solution what we need is an adequate virtualization based system that
respects our rights to the highest degree possible with Free Software but also
lets us run these proprietary programs in a safe and performant way, one that
we can carry with us too: the virtbook.
A virtbook is:
- Laptop capable of running simultaneously at least 4 GPU accelerated virtual
machines - Framerates of 60 FPS or better for lighter applications such as a web
browser or office program when displayed at 1920x1200 on a virtual desktop - Input latency of 100 ms or less on virtual desktops
- Support for GPU sharing with Linux and Windows virtual machines
- Support for open standard graphics APIs such as Vulkan and OpenGL, as well
as proprietary graphics APIs, inside VMs - Hardware encode/decode for modern media codecs (AV1, VP9, h264) inside VMs
- Free Software host OS and open driver stack
- Security boundaries enforced by hardware for GPU sharing
- Battery runtime of at least 5 hours for light GPU loads in a VM
- Integrated graphical tools to manage virtual machines and their resources
- Secure, performant and seamless file sharing between host and VMs
- Tools to isolate or restrict network access to VMs
So how would you achieve this in 2025?
I am sure a lot of you already know where I am going with this… more in the
next few days.
Postscript:
I think the real solution to achieving widespread software freedom has to be a
political one. As Free Software advocates and engineers, we have got to cut out
the “we just need to try harder” attitude on the technical front and accept
that we cannot win through technical achievements alone.
The game is rigged, the decision makers and the corporate and government
purchasing officers get massive kickbacks to go along with schemes to prop up
bad proprietary software. Geopolitics also comes in to play as the big players
pressure the smaller ones to use their national proprietary software or else.
Any discussion of significant public funding for Free Software is quashed by
powerful special interests. The flood of constant corporate propaganda has
created so many blind followers. Etc.
So let us accept this reality while we continue to advance not only on
technical fronts but also on social and political fronts, and help people see a
clear path forward to empower themselves with computing and safeguard their
rights as much as possible. And to have a good attitude while doing it.
And if it means people use a few pieces of nonfree software in a less harmful
manner for a while longer, so be it, as long as it is within the frame of a
coherent strategy where we prioritise software freedom. You and I may strictly
reject all nonfree software, and accept the consequences of that decision, but
we cannot reasonably expect others to do so in all situations.
copyright computeforpeople 2025
I give permission for this content to be incorporated in a machine
learning corpus or used to train machine learning models only when the full
corpus is made available publicly under an open content license and all code
used to generate said models is made available publicly under a license
compliant with the Free Software Definition.