Linux: Find Out If CPU Support Intel VT and AMD-V Virtualization Support

by on May 26, 2010 · 18 comments· LAST UPDATED May 26, 2010

in

How do I find out if my system support Intel - VT / AMD -V hardware virtualization extensions for host CPU using the command line options?

Both Intel and AMD CPU support virtualization technology which allows multiple operating systems to run simultaneously on an x86 computer in a safe and efficient manner using hardware virtualization. XEN and other virtualization software can use Intel / AMD hardware virtualization for full virtualization. In other words with Intel VT, or AMD-V you can run an unmodified guest OS, like MS-Windows without any problem.

Use the following command to verify that if hardware virtualization extensions is enabled or not in your BIOS.

Linux: Verify Intel VT CPU Virtualization Extensions

Type the following command as root to verify that host cpu has support for Intel VT technology, enter:
# grep --color vmx /proc/cpuinfo
Sample outputs:

Fig.01: Linux check Intel VT -  if my server can run full virtualization or not

Fig.01: Linux check Intel VT - if my server can run full virtualization or not


If the output has the vmx flags, then Intel CPU host is capable of running hardware virtualization.

Linux: Verify AMD V CPU Virtualization Extensions

Type the following command as root to verify that host cpu has support for AMD - V technology:
# grep --color svm /proc/cpuinfo
Again, the output has the svm flags, then AND CPU host is capable of running hardware virtualization.

Tip # 1: Check Your BIOS Settings

Many, system manufacturers disable AMD or Intel virtualization technology in the BIOS by default. You need to reboot the system and turn it in the BIOS.

Tip # 2: XEN Kernel

By default, if you booted into XEN kernel it will not display svm or vmx flag using the grep command. To see if it is enabled or not from xen, enter:
cat /sys/hypervisor/properties/capabilities
You must see hvm flags in the output. If not reboot the box and set Virtualization in the BIOS.



If you would like to be kept up to date with our posts, you can follow us on Twitter, Facebook, Google+, or even by subscribing to our RSS Feed.


{ 18 comments… read them below or add one }

1 Philippe Petrinko May 26, 2010 at 11:55 am

Useful topic, thanks Vivek, and I didn’t know of “–color” fro grep, nice too.
Please give us some more topics related to virtualization, pleeeease !!! :-)
– Philippe

Reply

2 Vivek Gite May 26, 2010 at 4:31 pm

We have covered XEN, Vmware server and OpenVZ in the past.

However, I’m going to write a bit about central storage for VM, VM live migration, KVM (which seems like a winner to me), VM security & advanced networking in coming days. Let me know if you want to see any specific topics here or at vivek at nixcraft dot com.

HTH

Reply

3 Gal Frishman May 26, 2010 at 2:55 pm

It is possible that your processor supports virtualization while BIOS disables it (as mentioned) but have no option to enable it! That was the case with my Acer Aspire L5100.

I wrote about this problem and how I solved it:
Link

Reply

4 Vivek Gite May 26, 2010 at 4:26 pm

Interesting read; this is the main reason why I stick to Intel or Supermicro motherboards for server usage They never do this kind of silly stuff. I paid for it and I’ve full right to use hardware.

Reply

5 Nilesh May 26, 2010 at 6:12 pm

Vivek, how do I find if my processor can use a 64-bit version of Arch Linux or for that matter any Linux ? I got from my vendor as 32-bit. Someone on IRC told me something similar. Please help me out.

Reply

6 Vivek Gite May 26, 2010 at 8:28 pm

Run

egrep '^flags|lm' /proc/cpuinfo  --color

If you get lm (long mode); it means 64 bit CPU. See this FAQ.

Reply

7 Solaris May 26, 2010 at 8:14 pm

$ kvm-ok

Reply

8 Vivek Gite May 26, 2010 at 8:29 pm

Yes, but it is Debian / ubuntu thingy (script). So it is better if one learn to use direct command ;)

Reply

9 Solaris May 27, 2010 at 9:16 am

Hey Vivek,

I agree. But lets keep it posted, maybe someone can find it useful :)

Reply

10 Yogesh Kumar Singh November 21, 2012 at 12:10 pm

Thanks Solaris I did find it useful…. I was unable to run virtual machine on my comp and was thinking that there is problem with my installation but then kvm-ok returned that virtualization is disabled from my BIOS…

Reply

11 Nilesh May 27, 2010 at 2:42 am

Thanks. Got it from some referencing posts on your blog. You rock man.

Reply

12 SIFE June 2, 2010 at 3:21 pm

hi ,if am planing to run full virtulasions ,do i need intel VT or AMD-V to make that work ?

Reply

13 Vivek Gite June 2, 2010 at 4:03 pm

Yes, you need Intel VT for Intel CPUS and AMD V for AMD CPUS.

Reply

14 Milind October 31, 2010 at 3:33 pm

Shouldn’t it be possible to use paravirtualization? Will need tweaked kernels but those are available.

Thanks,
- Milind

Reply

15 gal October 25, 2010 at 8:52 pm

Hey,

What about taking many physical servers and making from them a single “super server” via Xen/VMware? Is there any article/guide that explains how to do so?

* When I say “super server” I mean to take 1 physical server and make him the “master” (where the OS sitting on, i.e – linux) and the other pysical servers are the “guest” (they have no OS (or just not regular OS, i.e – linux)

Thanks ;-)

Reply

16 Faisal December 31, 2010 at 10:13 am

actually i am new to this tech stuff. i dont know whats all this about but want to know more. were do you write these commands if you are running windows xp

Reply

17 S Khan September 14, 2011 at 1:29 pm

ok, so I have the exact same CPU, Intel E8400, that you have. I have enabled Virtualization Technology in the BIOS. But I still do not see, vmx, when do this: grep –color vmx /proc/cpuinfo

But I do see hvm when do this:
> cat /sys/hypervisor/properties/capabilities
> xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64
What does this mean? I have VMX or I don’t ?
Though I have compiled the linux kernel 3.0, is it possible that it might be disabled in the kernel?

Reply

18 Vivek Gite September 14, 2011 at 2:49 pm

Yes, it is possible that some options may not been included in your kernel config.

Reply

Leave a Comment

You can use these HTML tags and attributes for your code and commands: <strong> <em> <ol> <li> <u> <ul> <kbd> <blockquote> <pre> <a href="" title="">

Tagged as: , , , , , , , , , , , , , , ,

Previous Faq:

Next Faq: