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

by on May 26, 2010 · 21 comments· LAST UPDATED November 19, 2013

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 problems.
Tutorial details
DifficultyEasy (rss)
Root privilegesYes
RequirementsIntel/AMD x86 server
Estimated completion time1m

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.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 21 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 nixCraft 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 nixCraft 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 nixCraft 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 nixCraft 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 nixCraft 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 nixCraft September 14, 2011 at 2:49 pm

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

Reply

19 khan July 8, 2013 at 12:27 am

hi
i am running vmware workstation 9.0.2 on windows 7 host .
i have installed ubuntu 10.04 in it and also rhel 6 .. and when i enter the above command in any of these guest oses i dont see the vmx flag ? am i suppose to not see it in guest oses ?

my system is dell optiplex 755 . cpu is e6550 . and board supports virtualization and is enabled .

Reply

20 abhijit January 10, 2014 at 5:31 pm

I have 64bit dell machine with VT support. I have enabled it in BIOS, but “vmx” flag is missing from cpuinfo. I am using fedora 20 . The uname o/p below –
Linux localhost.localdomain 3.11.10-301.fc20.x86_64 #1 SMP Thu Dec 5 14:01:17 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Can somebody help with this.

Reply

21 anvita rathi August 28, 2014 at 10:19 am

can anyone please help me with the code in c++ to check virtualization?
rply asap

Reply

Leave a Comment

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

Previous Faq:

Next Faq: