VMware Cloud Community
fibadei
Contributor
Contributor

Is possible to make the time running slower in guest OS? I mean 10 second real time (host) equal 1 second guest time.

Hi everyone.

I'm new here, and I'm not sure what is the right forum to post, so please correct me if I'm doing something wrong.

I have a difficult question about VM capabilities. No documentation, web resource or white paper seems to answer to it (and a searched a lot).

I need to study some complex time-related behaviours, and need to have a "virtual" CPU faster than it really is (say like its "perceived" computing power was 10 times more than really is) . Is it possible to slow down time in a guest OS (say XP) so that it is possible to see what happen? A way to reduce time speed (relating to CPU clock speed) would suffice. I mean, on guest OS, all clocks (RTC, and so on) should move much slower than real world time, making real CPU perceived by VM applications as more powerful than it really is (measured in VM time).

In other words: supposing in real time all instructions take, say, a nanosecond to execute. It means in real time this hypothetical CPU compute 1 billion of instructions. But if their RTC (and other clocks in the VM guest) are slowed down (by VMM) by, say, ten times, guest OS and application will see 10 billions of instructions per (fake) second. Using this technique you can "simulate" the behaviour of a faster CPU than you really have.

Anyone knows if this can be done using VMware? How?

TIA.

0 Kudos
2 Replies
TomHowarth
Leadership
Leadership

This is not the answer that you wanted to hear, but VMware cannot do this, what you want is the opposite of a Slow down programme,

You can force the virtual TSC's rate to a specific value N (in cycles per second or Hz) by adding the setting time Tracker.apparentHz = N to the virtual Machine's .vmx configuration file. This feature is rarely needed. One possible use is to test for bugs in guest operating systems; or example, Linux 2.2 kernels will hang during startup if the TSC runs faster than 4GHz. Note that this feature does not change the rate at which instructions are executed. In particular, you cannot make programs run more slowly by setting the virtual TSC's rate to a lower value.

Taken from page 8

If you found this post helpful pleas consider the awarding of points be using the Correct/Helpful buttons.

Its not much but its all we've got Smiley Happy

Tom Howarth VCP / VCAP / vExpert
VMware Communities User Moderator
Blog: http://www.planetvm.net
Contributing author on VMware vSphere and Virtual Infrastructure Security: Securing ESX and the Virtual Environment
Contributing author on VCP VMware Certified Professional on VSphere 4 Study Guide: Exam VCP-410
fibadei
Contributor
Contributor

Thank you for your help.

I read the document you suggest before asking help, and found no hints about decoupling VM time by real world time. But some descriptions suggest me that it can be done, at least in theory. No clue if there is a way to really do it, available to users of VM manager (surely who designed the VMM can do it). Hope someone who knows intimate details of implementations of VMM can help, even to say "we have not made that functionality available to outside world".

By the way, thank you again for your answer. I appreciate it, and so assigned you the points for your helpful message.

0 Kudos