Albert Vilella, PhD.
banner
albertvilella.bsky.social
Albert Vilella, PhD.
@albertvilella.bsky.social
Bioinformatics Scientist / Next Generation Sequencing, Single Cell and Spatial Biology, Next Generation Proteomics, Liquid Biopsy, SynBio, Compute Acceleration in biotech // http://albertvilella.substack.com
There was a spike of activity in my account which was flagged. I appealed and should be back to normal soon.
November 16, 2025 at 3:25 PM
On the Ubuntu Community Help Wiki, the HybridGraphics page documents how to use acpi_call via GUI tools. That page is community-maintained.
November 16, 2025 at 3:04 PM
Community Contributors

Many regular Linux users raised bugs, submitted configuration tweaks, and helped in documentation. For example, a bug on Ubuntu’s Launchpad: bug #1758243 (“bumblebee needs configuration changes …”) was reported by a user Rocko, and discussed by many in the community.
November 16, 2025 at 3:04 PM
On the nvidia-prime / prime-select side, Ubuntu provides tooling to switch GPUs (e.g., prime-select). While not all tooling is explicitly attributed to individuals in public-facing docs, the nvidia-prime package has been maintained by Ubuntu developers as part of their graphics stack.
November 16, 2025 at 3:04 PM
In that same inclusion report, one of the reviewers was Alberto Milone.

Bug reports: There are Launchpad bugs (for example, “bumblebee: bbswitch-dkms causes forced shutdown”) where Bruno Pagani was assigned.
November 16, 2025 at 3:04 PM
Ubuntu / Canonical (HWE Team)

On Ubuntu’s side: bbswitch was accepted as a package in Ubuntu main (via DKMS) to support hybrid graphics. According to the “Main Inclusion Report for bbswitch,” the inclusion was driven by the HWE (Hardware Enablement) team of Canonical.
November 16, 2025 at 3:04 PM
While there isn’t a huge “who’s who” in the README, the project has seen contributions via bug reports, pull requests, and maintenance by the Bumblebee community.
November 16, 2025 at 3:04 PM
Bbswitch Project Maintainers

The bbswitch kernel module is hosted under the Bumblebee-Project GitHub.
bbswitch’s code “automatically detects the required ACPI calls … for … Optimus laptops.”
November 16, 2025 at 3:04 PM
Key Contributors & Projects

Martin Juhl (“MrMEEE”)

One of the principal authors of Bumblebee. The Bumblebee-Project website itself states the PayPal account belongs to Martin Juhl.
November 16, 2025 at 3:04 PM
Nouveau improvements: KMS and (gradual) reclocking.
November 16, 2025 at 3:04 PM
acpi_call (invoke ACPI methods to power/control GPU).

vga_switcheroo (kernel subsystem).
docs.kernel.org

PRIME / PRIME Sync / PRIME Render Offload (X.Org/driver offload infrastructure + vendor support).
The Linux Kernel documentation — The Linux Kernel documentation
docs.kernel.org
November 16, 2025 at 3:04 PM
Short list of the most important projects/components

Bumblebee (userland offload shim).

bbswitch (kernel module to turn off the dGPU).
November 16, 2025 at 3:04 PM
Mid (2014–2018): distribution packages using NVIDIA’s PRIME support (nvidia-prime scripts) + PRIME Sync / X.Org RandR offload
Late (2018–2019): PRIME Render Offload (per-app offload) and groundwork for Wayland integration
November 16, 2025 at 3:04 PM
Typical toolchain evolution on a 2010s laptop

Early (2011–2014): Bumblebee + bbswitch/acpi_call + VirtualGL/Primus
November 16, 2025 at 3:04 PM
Better tear-free multi-GPU display — PRIME Sync and X/DRI improvements reduced tearing when mixing GPUs.
November 16, 2025 at 3:04 PM
Cleaner upstream integration — PRIME and X/DRM support replaced many of the brittle workarounds and made distributions able to ship better defaults.

Improved open-source alternative — Nouveau KMS and partial reclocking meant some GPUs could be used without the proprietary driver (still w/ caveats).
November 16, 2025 at 3:04 PM
What these changes actually delivered (practical effects)

Selectable per-app offload — run heavy apps on the dGPU (Bumblebee → PRIME Render Offload).

Lower idle power — bbswitch / acpi_call / kernel runtime PM allowed turning the dGPU off when idle.
November 16, 2025 at 3:04 PM
but the ecosystem steadily improved toward workable Wayland hybrid-GPU setups by the end of the decade.
November 16, 2025 at 3:04 PM
Late 2010s — Wayland and EGL/driver issues

Wayland compositors and the move away from X required new EGL/GBM/EGLStreams support. That prompted further driver work (and some friction with NVIDIA’s initial EGLStreams approach),
November 16, 2025 at 3:04 PM
Reclocking and power management were slow and tricky because of missing firmware/docs, but progress in the mid-2010s made Nouveau more usable on many cards (still lagging the proprietary stack in perf/features).
November 16, 2025 at 3:04 PM
2010s (throughout) — Nouveau (open-source driver) progress, KMS & reclocking

The open Nouveau driver gradually gained Kernel Modesetting (KMS) and reclocking (ability to put the GPU into higher performance/power states).
November 16, 2025 at 3:04 PM
PRIME Render Offload (officially documented in NVIDIA driver READMEs) let you run just a single application on the dGPU while the rest of the desktop stayed on the iGPU — a cleaner replacement for Bumblebee. Adoption and polish improved through the late 2010s.
November 16, 2025 at 3:04 PM
2013–2018 — vendor support & PRIME Render Offload

NVIDIA began adding official Optimus/PRIME features into its proprietary driver (so distributions could use supported offload and switching instead of Bumblebee).
November 16, 2025 at 3:04 PM
That gave a standard way to offload rendering to the dGPU without complex hacks. PRIME Sync improved tear-free presentation between GPUs. NVIDIA added explicit support for PRIME in their Linux driver and published documentation for PRIME Render Offload.
November 16, 2025 at 3:04 PM
Mid-2010s — PRIME (DRI/ RandR offload) and PRIME Sync

X.Org/DRM developed PRIME (RandR/DRI offload) so one GPU could render (source) and another present to the screen (sink).
November 16, 2025 at 3:04 PM