Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have intel celeron d 3.06ghz processor . Now I am using 32 bit Ubuntu and I wish to upgrade to 64 bit Ubuntu if my processor allow. My doubt is how to identify 64 bit processor with cat /proc/cpuinfo command. it shows


clflush size : 64

Does my processor support 64 bit OS ?

share|improve this question

migrated from stackoverflow.com Jan 15 '13 at 7:59

This question came from our site for professional and enthusiast programmers.

4 Answers 4

up vote 12 down vote accepted

Use the lscpu command.

32bit example output:

$ lscpu
Architecture:          i686
CPU op-mode(s):        32-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    4
Core(s) per socket:    1
Socket(s):             1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 26
Stepping:              5
CPU MHz:               2260.998
BogoMIPS:              4521.99
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              8192K

64bit example:

$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
CPU(s):                4
Thread(s) per core:    1
Core(s) per socket:    4
CPU socket(s):         1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 23
Stepping:              6
CPU MHz:               2327.533
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              6144K
share|improve this answer
    
Thank you...... –  Ullas Prabhakar Jan 15 '13 at 6:26

The flags section will contain lm if you have a Intel 64-/AMD 64-capable CPU. Other 64-bit architectures should have similar flags that you can look for.

share|improve this answer

To know if the installed Ubuntu is of 32 or 64 bits:

a) getconf LONG_BIT

b) uname -m

If it shows i686 or i386 it means 32 bits. If it shows x86_64 it means 64 bits.

If the CPU is of 32 bits Ubuntu must be of 32 bits. If the CPU is of 64 bits it can work in 64 or 32 bits. So we can choose: Ubuntu can be of 32 bits or of 64 bits.

To know if the CPU is of 32 or 64 bits:

a) grep -w lm /proc/cpuinfo

If we see lm in red is of 64 bits. Otherwise is of 32 bits.

b) sudo lshw | grep "description: CPU" -A 12 | grep width

It says clearly what we want to know.

share|improve this answer
    
First part is obsolete. OP says "Now I am using 32 bit Ubuntu". –  glglgl Dec 13 '13 at 15:48
    
lsb_release -a works for LSB compatible distros. –  Paulo Scardine Jan 10 at 14:23
lscpu

Not using cat /proc/cpuinfo , but it will do.

If you, for some reason, really need to use that file, try:

grep flags /proc/cpuinfo

If you can find a "lm" flag, you are running a 64bit cpu.

share|improve this answer
2  
AFAIK uname shows only information about the compiled kernel. Of course you can have a 32bit kernel instaled in 64bit hardware, but not the other way. –  Paulo Scardine Jan 15 '13 at 6:23
    
I know, I changed it immediately. Now it should be OK. –  KamikazeCZ Jan 15 '13 at 6:24
    
-1: bad karma - you just copied from the other answers. –  Paulo Scardine Jan 15 '13 at 6:27
    
Well... I didn't but do your best. –  KamikazeCZ Jan 15 '13 at 6:27

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.