Whonix specific. I’ve found out that my Workstation virtual machine works significantly faster when I use SAS (LsiLogic SAS) virtual controller instead of SATA (AHCI). The type of I/O controller can be changed in VirtualBox VM settings.
When Whonix VM uses SATA (AHCI) controller then Linux kernel on a VM uses driver for Intel 82801 HM/HEM SATA Controller (ahci) which does not support I/O virtualization according to the specifications so it means that data transfer inside the VM will be very slow.
When Whonix VM uses SAS (LsiLogic SAS) virtual controller then Linux kernel inside VM uses driver for Broadcom LSI SAS1068 PCI-X Fusion-MPT controller (mptsas). Accodring to the description on Broadcom website:
https://docs.broadcom.com/doc/12353452
The LSISAS1068 eight-port controller provides 1.5 and 3Gb/s
data transfer rates per port
also
In addition, the LSI SAS controllers leverage an electrical and physical connection interface that is compatible with Serial ATA technology.
which means that LSI SAS logical controller inside VirtualBox can be used even when a host physical machine uses SATA interface for hard disk drives connections.
I tried to start upgrade-nonroot
both with SATA and SAS controllers and I found out that linux-image and linux-headers were installed 10 times faster when I used SAS.