Enable high refresh rates (i.e. more than 60Hz) in guests

Here you can provide suggestions on how to improve the product, website, etc.
Post Reply
jenkins1
Posts: 3
Joined: 4. Dec 2022, 23:08

Enable high refresh rates (i.e. more than 60Hz) in guests

Post by jenkins1 »

From what I understand, VirtualBox caps the refresh rate of the guest's display to 60Hz, and attempting to force any refresh rates higher than that is pointless.

This results in a very noticeable drop in smoothness when using the guest operating system on a host machine with a high refresh rate.

For example, I'm using a Windows host on a monitor which supports 200Hz. The host OS feels far, far more responsive and enjoyable to use than any of the guest machines.
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Enable high refresh rates (i.e. more than 60Hz) in guests

Post by mpack »

There is no such thing as a virtual refresh rate. That's a feature of your physical monitor. VirtualBox needs pay no more attention to that than any other app running on your host does.

If you have jerky graphics then consider a different explanation.
jenkins1
Posts: 3
Joined: 4. Dec 2022, 23:08

Re: Enable high refresh rates (i.e. more than 60Hz) in guests

Post by jenkins1 »

mpack wrote:There is no such thing as a virtual refresh rate. That's a feature of your physical monitor. VirtualBox needs pay no more attention to that than any other app running on your host does.

If you have jerky graphics then consider a different explanation.
But in VirtualBox guests I'm unable to specify a refresh rate higher than 60Hz. The VirtualBox Graphics Adapter seems to only report an available refresh rate of 60Hz which can't be changed.

This is corroborated by various instances of people trying to achieve the same thing as me, and being unable to.

For example:

Code: Select all

superuser dot com/questions/1520367/how-to-get-virtualbox-vms-display-refresh-rate-60hz
I think there's some confusion here about the exact nature of the problem.

Maybe my question should be re-phrased to the following:

My host OS has a refresh rate of 200Hz. How do I get VirtualBox guests to offer the same refresh rate? Currently guests are capped at 60Hz and cannot be changed.

or...

How do I get the VirtualBox Graphics Adapter to offer a higher refresh rate that 60Hz in a guest OS?

Edit: If you're saying that the guest refresh rate setting simply doesn't matter, then my question becomes: "Why does 2D graphical performance (e.g. desktop GUI / Windows Explorer interface) inside VirtualBox guests feel laggy and slow, and how can this be improved?" I have an extremely powerful system which should be capable of rendering the Windows WDDM environment at high refresh rates even through software-only means.
scottgus1
Site Moderator
Posts: 20965
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Windows, Linux

Re: Enable high refresh rates (i.e. more than 60Hz) in guests

Post by scottgus1 »

jenkins1 wrote:How do I get the VirtualBox Graphics Adapter to offer a higher refresh rate that 60Hz in a guest OS?
This may be a better question, though you should prepare for an answer "You can't".

Virtualbox's 'video card' is a virtual card, without all the pizzazz a real video card may have. So it may not be programmed to handle game-quality frame rates. Were it programmed in, the load on the CPU (not the GPU * ) would be higher and the VM slower.

The Bugtracker is the place to ask for new enhancements, or the Jenkins1 code submission for high-frame-rate video would be considered.

* The Virtualbox video card is simulated and its simulating code runs on the CPU. The host GPU doesn't directly calculate the VM's video, though some 3D calculations for the VM's video can be transferred to the host GPU, when 3D acceleration is enabled. (This may be the reason behind the observation in your edit.)

I always turn off all animations in Windows. They make my modern processor feel like a 286.
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Enable high refresh rates (i.e. more than 60Hz) in guests

Post by mpack »

As I already said, there is no such thing as a virtual refresh rate, so there is nothing to configure.

Refresh rate is a feature of physical hardware, and it's done in your monitor: you can't select different refresh rates for different windows on the host desktop. If you need that kind of physical hardware control then a virtual machine is the wrong choice for you.
fth0
Volunteer
Posts: 5661
Joined: 14. Feb 2019, 03:06
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Linux, Windows 10, ...
Location: Germany

Re: Enable high refresh rates (i.e. more than 60Hz) in guests

Post by fth0 »

What the OP really wants is not a higher refresh rate, but a higher frame rate.

AFAICS (but I'm not sure), VirtualBox only creates 50 frames per second, and this is perhaps not configurable.
jenkins1
Posts: 3
Joined: 4. Dec 2022, 23:08

Re: Enable high refresh rates (i.e. more than 60Hz) in guests

Post by jenkins1 »

mpack wrote:As I already said, there is no such thing as a virtual refresh rate, so there is nothing to configure.
And as I already said, I think there's confusion about the exact terminology here.
I think it's pretty clear what I want to achieve, which is a smoother visual experience inside VirtualBox guests.
I don't know why you've now made two posts lecturing me about how what I want is wrong, when you could actually try to help me achieve my goal which I took pains to clearly explain.
mpack wrote:Refresh rate is a feature of physical hardware, and it's done in your monitor: you can't select different refresh rates for different windows on the host desktop.
That may well be technically correct, but the outcome is still the same: whatever's running inside the VirtualBox window sure isn't running at 200Hz (or 200FPS if you want to be pedantic).
fth0 wrote:What the OP really wants is not a higher refresh rate, but a higher frame rate. AFAICS (but I'm not sure), VirtualBox only creates 50 frames per second, and this is perhaps not configurable.
Yes, thank you. I will submit an enhancement request on the bug tracker, although I now fear I may be struck down for daring to mention the words "refresh rate".

Not the best/friendliest introduction to the VirtualBox community.
mpack
Site Moderator
Posts: 39156
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Enable high refresh rates (i.e. more than 60Hz) in guests

Post by mpack »

jenkins1 wrote: I think it's pretty clear what I want to achieve, which is a smoother visual experience inside VirtualBox guests.
I have no idea what you are trying to achieve, but the subject matter of this topic is defined by the topic title you selected. Indeed, any other discussion would be regarded as off topic.

And for the third time, refresh rate (and redraw rate) is defined by the capabilities of the host, just as network and disk performance is. I don't know why you insist on looking for a VM solution.

I don't believe Fth0 is correct when he says that VirtualBox draws at 60Hz. When my apps paint inside a window they generally don't care about frame rate, they just call the host OS API and let the host worry about it. I have no reason to believe VirtualBox would do any different. I don't write games though I do write graphics apps, so I'm aware that games often do care about frame rate, and syncing frame rate with refresh rate to avoid flicker, but those things won't translate well to virtual hardware - and still don't seem to be what you want to discuss. I assume that there's a graphics API function to determine the refresh rate. I have no idea if VirtualBox reports a nominal value or the actual value - though I would assume the latter if 3D acceleration is enabled.

If you are indeed conflating frame rate and refresh rate then this isn't a VM question at all, it's a question of performance, and it's well known that a VM can never delivers the same graphics performance as physical hardware. Nor would performance be configurable whether its a PC or a VM.

So all in all, I'm struggling to make sense of what you're talking about if it isn't the plain meaning of the topic title!
Post Reply