8 Replies Latest reply on Apr 25, 2008 1:13 AM by dariusl

    How to check if VMware Server beta 2 is using IVT

    dariusl Novice

      The datasheet for VMware Server mentions "Experimental support for Intel* VT". How can I check that VMware Server using IVT on my T2600 (32-bit) CPU?  Thanks!

        • 1. Re: How to check if VMware Server beta 2 is using IVT
          btone Hot Shot

          same question here for amd cpus - running server2 beta2 on ubuntu 8.04/64bit on a athlon x2 be-2400 cpu.

           

          any help appreciated ...

           

          regards

          • 3. Re: How to check if VMware Server beta 2 is using IVT
            btone Hot Shot

            what do you mean?

             

            seems that virt. support on my hardware is enabled:

            btone@miro:~# egrep '^flags.*(vmx|svm)' /proc/cpuinfo

            flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch

            flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow rep_good pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy 3dnowprefetch

             

            but how can I check if vmware uses it?

             

            regards

             

            btone

            • 4. Re: How to check if VMware Server beta 2 is using IVT
              Champion

              VMware Server 2.0 only supports VT on 64-bit processors.  VT will be used for all 64-bit code, because it is the only efficient way to protect the virtual machine monitor from the guest.  To enable VT support for 32-bit code, add the following to your configuration file:

               

              monitor.virtual_exec = hardware

              • 5. Re: How to check if VMware Server beta 2 is using IVT
                Champion

                VMware Server 2.0 only supports AMD-V on AMD CPUs with Rapid Virtualization Indexing support (e.g. Barcelona).  On such CPUs, AMD-V will be used by default for all 64-bit guests and certain 32-bit guests.  To enable AMD-V for other guests, use the following configuration option:

                 

                monitor.virtual_exec = hardware

                 

                By default, RVI will be used whenever AMD-V is used.  To disable RVI, use the following configuration option:

                 

                monitor.virtual_mmu = software

                 

                To explicitly disable AMD-V, use the following configuration option:

                 

                monitor.virtual_exec = software

                • 6. Re: How to check if VMware Server beta 2 is using IVT
                  dariusl Novice

                  >VMware Server 2.0 only supports VT on 64-bit processors. VT will be used for all 64-bit code, because it is the only efficient way to protect the virtual machine monitor from the guest. To enable VT support for 32-bit code, add the following to your configuration file:

                   

                  >monitor.virtual_exec = hardware

                   

                   

                  I think you are saying that VT support is enabled by default for 64-bit processors, and disabled by default for 32-bit processors.

                   

                   

                  But does 'monitor.virtual_exec = hardware' really force VMware Server 2.0 to use VT support (assuming the processor/bios supports it), or might it still not use hardware VT even though it is enabled?

                   

                   

                   

                   

                   

                  A separate but related question; If the VMware monitor running on Win2K3 is actually using a processor's VT features, should it be spending the majority of its time in user mode or kernel mode?

                   

                   

                   

                  Thanks,

                   

                   

                  D

                   

                   

                  • 7. Re: How to check if VMware Server beta 2 is using IVT
                    Champion

                    VMware Server 2.0 only supports VT on 64-bit processors; it does not support VT on 32-bit processors.

                     

                    On 64-bit processors, VT will be used for all 64-bit code.  By default, it will not be used for 32-bit code.  On 64-bit processors, 'monitor.virtual_exec = hardware' forces VMware Server 2.0 to use VT, assuming (a) the processor supports VT, (b) VT is enabled in the BIOS, and (c) the VT feature set supported by the processor is compatible with the product.  If any of these are not true, a message should be displayed indicating why VT is not being used.  Note that (c) is true for all commercially shipping Intel EM64T processors that suspport VT.  However, in the case of mixed stepping processors in an SMP system, it is possible that a BIOS patch may be required to coerce all processors into presenting a unified VT feature set.

                     

                    I'm not sure what the host OS is going to report, but I would expect all guest execution time to be charged to the VMware kernel driver, regardless of execution mode.  The host OS is completely unaware of what is going on while the virtual machine monitor is running.

                     

                    With the current beta release of VMware Server  2.0, you can check the log file for which monitor extensions are loaded if you want to verify VT/AMD-V usage:

                     

                    hv-none.vmm32 or hv-none.vmm64 -- binary translation will be used for the indicated code size

                    hv-vt.vmm32 or hv-vt.vmm64 -- VT will be used for the indicated code size

                    hv-svm.vmm32 or hv-svm.vmm64 -- AMD-V will be used for the indicated code size

                     

                    Note that in future releases, hv-vt.vmm32 and hv-svm.vmm32 will be able to dynamically switch from BT to VT/AMD-V.  Their power-on state will be indicated by 'hv32=0' (BT) or 'hv32=1' (VT/AMD-V) in the log message for 'HV Settings'.  If the 32-bit monitor starts out in BT mode, it will switch to VT/AMD-V as soon as the virtual processor executes a 64-bit instruction.

                    • 8. Re: How to check if VMware Server beta 2 is using IVT
                      dariusl Novice

                      Thanks JM, for your time and comprehensive replies.