I found two commands to output information about my CPU: cat /proc/cpuinfo and lscpu . /proc/cpuinfo shows that my CPU speed is 2.1 Ghz, whereas lspcu says it is 3167 Mhz. Which one is correct?
This is my exact output from cat /proc/cpuinfo about my processor speed:
And this is from lscpu :
(For some reason, lscpu outputs differently every time, varying between 3100 and 3300 MHz)
5 Answers 5
To see the current speed of each core I do this:
If your watch command does not work with intervals smaller than one second, modify the interval like so:
This displays the cpu speed of each core in real time.
By running the following command, one or more times, from another terminal one can see the speed change with the above watch command, assuming SpeedStep is enabled ( Cool’n’Quiet for AMD ).
(This command uses bc to calculate pi to 10000 places.)
For intel i3, i5 and i7 based cpus there is a dedicated tool called i7z that shows current speed for all cpu cores.
From man page (description):
i7z runs the i7z, ncurses based, program without any options. i7z will print out the C-states and temperature for i3, i5 and i7 based Core processors from Intel (including Nehalems, Sandy Bridge and Ivy Bridge).
For ubuntu-based distributions you can install it by issuing this command:
then just run it (tool needs to be run with sudo):
The Intel Core i7-4600U Processor supports Turbo Boost technology. It has a base frequency of 2.10GHz and a Max Turbo Frequency of 3.30GHz. That means that,
- If you disable the Turbo Boost (in the BIOS setup menu), the CPU will work at 2.10GHz all the time.
- When Turbo Boost is enabled and only one of the cores is working, the CPU will work at a maximum of 3.30GHz.
- If Turbo Boost is enabled and all the cores are working, the CPU will work at 2.10GHz.
Obtaining current frequency
To determine if the Turbo Boost is activated and which is the current frequency, you can use cpupower frequency-info . For instance, for an old Intel Core i5-660 with Turbo Boost enabled, you will get the following.
Note that the information states the hardware limits ( 1.20 GHz – 3.47 GHz ), the possible frequencies ( 3.47 GHz, 3.33 GHz, 2.53 GHz, 1.87 GHz, 1.20 GHz ) and the current frequency ( 1.87 GHz ). You may find the technical information of these frequencies at the Intel website.
Frequency when TurboBoost is disabled
Note the difference when you run the same command with Turbo Boost disabled: In the boost state support section, the values for Supported and Active are no . Here, the CPU will be at the nominal/minimal value (1.20Ghz) all the time.
You can disable the Turbo Boost using the BIOS or some Linux options/commands. The kernel support can be enabled/disabled using the /sys/devices/system/cpu/cpufreq/boost file.
Linux is an open source operating system
NetMarketShare reports that 1.84 percent out of all the PCs connected to the internet were running Linux, and Chrome OS, which is a Linux variant, has about 0.29 percent. These might seem like small numbers, but when you consider that over 250 million PCs are sold every year, the number of PCs running Linux that is connected to the internet go up to more than a million. If you happen to be one of them or if you have a friend or acquaintance who has a Linux PC and needs help with learning about processor or CPU details.
Look no further. The different commands that you need to use in order to learn details about the processor like the number of cores, availability of hyper threading, architecture, cache size etc. are many, and these include Iscpu, /proc/cpuinfo and Istopo (hwloc). They give detailed information about cpu cores/processing units. The examples that are given below explain how to go about interpreting the data that is obtained.
Vendor and model of processor
Search the /proc/cpuinfo file with the grep command.
$ cat /proc/cpuinfo | grep vendor | uniq
vendor_id : GenuineIntel
Once you learn the name of the processor, you can use the model name to look up the exact specifications online on Intel’s website.
$ cat /proc/cpuinfo | grep ‘model name’ | uniq
model name : Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz
The Iscpu command can be used to learn more about the architecture
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
This proves that the architecture is x86_64 which is 64 bit.
The frequency/speed of the processor is reported by both Iscpu and /proc/cpuinfo
$ lscpu | grep -i mhz
CPU MHz: 1998.000
$ cat /proc/cpuinfo | grep -i mhz | uniq
cpu MHz : 1998.000
The number of cores
If you have multiple cores in your CPU, your processor speed will also be much faster.
The Iscpu command will indicate the “cores per socket”
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
But counting only the number of processors would give you wrong numbers because, in hyperthreaded processors, the number of processors that the operating system sees is twice the number of cores. However /proc/cpuinfo has a field that is named ‘core id’ which is a unique id for each core in a single processor. To know the actual number of cores on the processor, you can count the core id.
$ cat /proc/cpuinfo | grep -i ‘core id’
core id : 0
core id : 2
core id : 1
core id : 3
Hyper threading allows individual cores to behave like 2 logical processing units. This will increase the processing power of each core. You will need to compare two different values to learn if a processor has threading or not.
If the number of processing units is equal to the number of cores, that means there is no hyper threading. If the number of processing units is more than the number of cores, then there is hyperthreading.
In a previous article, we put together a list of 10 useful commands to collect system and hardware information in Linux. In this guide, we will narrow down to the CPU/processor, and show you various ways of extracting detailed information about your machine CPU.
Just to give you an overview, we will query information such as CPU architecture, vendor_id, model, model name, number of CPU cores, speed of each core, and lots more.
Essentially, the /proc/cpuinfo contains this all info, every other command/utility gets its output from this file.
With that said, below are 9 commands for getting info about your Linux CPU.
1. Get CPU Info Using cat Command
You can simply view the information of your system CPU by viewing the contents of the /proc/cpuinfo file with the help of cat command as follows:
To get a little specific, you can employ the grep command – a CLI tool for searching plain-text data for lines matching a regular expression. This can help you only output vendor name, model name, number of processors, number of cores, etc:
2. lscpu Command – Shows CPU Architecture Info
The command lscpu prints CPU architecture information from sysfs and /proc/cpuinfo as shown below:
3. cpuid Command – Shows x86 CPU
The command cpuid dumps complete information about the CPU(s) collected from the CPUID instruction, and also discover the exact model of x86 CPU(s) from that information.
Make sure to install it before running it.
Once installed, run cpuid to collect information concerning the x86 CPU.
4. dmidecode Command – Shows Linux Hardware Info
dmidecode is a tool for retrieving hardware information of any Linux system. It dumps a computer’s DMI (a.k.a SMBIOS) table contents in a human-readable format for easy retrieval. The SMBIOS specification defines various DMI types, for CPU, use “processor” as follows:
5. Inxi Tool – Shows Linux System Information
Inxi is a powerful command-line system information script intended for both console and IRC (Internet Relay Chat). You can use it to instantly retrieve hardware information.
You can install like so:
To display complete CPU information, including per CPU clock-speed and CPU max speed (if available), use the -C flag as follows:
6. lshw Tool – List Hardware Configuration
lshw is a minimal tool for gathering in-depth information on the hardware configuration of a computer. You can use the -C option to select the hardware class, CPU in this case:
7. hardinfo – Shows Hardware Info in GTK+ Window
hardinfo displays hardware information in a GTK+ window, you can install it as follows:
Once you have it installed, type:
Linux System Information
It also enables you to generate a system hardware info report by clicking on the “Generate Report” button. From the interface below, click on “Generate” to proceed. Note that you can choose the hardware info category to be generated.
Generate System Information Report
Once you have generated the report in html format, you can view it from a web browser as shown below.
Linux System Detailed Information
8. hwinfo – Shows Present Hardware Info
hwinfo is used to extract info about the hardware present in a Linux system. To display info about your CPU, use the –cpu
9. nproc – Print Number of Processing Units
nproc command is used to show the number of processing unit present on your computer:
For additional usage info and options, read through the man pages of these commands like this:
That’s it for now! You can share with us additional ways of extracting CPU information in Linux via the feedback form below.
If You Appreciate What We Do Here On TecMint, You Should Consider:
TecMint is the fastest growing and most trusted community site for any kind of Linux Articles, Guides and Books on the web. Millions of people visit TecMint! to search or browse the thousands of published articles available FREELY to all.
If you like what you are reading, please consider buying us a coffee ( or 2 ) as a token of appreciation.
We are thankful for your never ending support.
CPU hardware information
The cpu information includes details about the processor, like the architecture, vendor name, model, number of cores, speed of each core etc.
There are quite a few commands on linux to get those details about the cpu.
In this post we shall take a look at some of the commonly used commands that can be used to get details about the cpu.
The /proc/cpuinfo file contains details about individual cpu cores.
Output its contents with less or cat.
Every processor or core is listed separately the various details about speed, cache size and model name are included in the description.
To count the number of processing units use grep with wc
To get the actual number of cores, check the core id for unique values
So there are 4 different core ids. This indicates that there are 4 actual cores.
2. lscpu – display information about the CPU architecture
lscpu is a small and quick command that does not need any options. It would simply print the cpu hardware details in a user-friendly format.
Hardinfo is a gtk based gui tool that generates reports about various hardware components. But it can also run from the command line only if there is no gui display available.
It would produce a large report about many hardware parts, by reading files from the /proc directory. The cpu information is towards the beginning of the report. The report can also be written to a text file.
Hardinfo also performs a few benchmark tests taking a few minutes before the report is displayed.
The lshw command can display limited information about the cpu. lshw by default shows information about various hardware parts, and the ‘-class’ option can be used to pickup information about a specific hardware part.
The vendor, model and speed of the processor are being shown correctly. However it is not possible to deduce the number of cores on the processor from the above output.
The nproc command just prints out the number of processing units available. Note that the number of processing units might not always be the same as number of cores.
The dmidecode command displays some information about the cpu, which includes the socket type, vendor name and various flags.
The cpuid command fetches CPUID information about Intel and AMD x86 processors.
The program can be installed with apt on ubuntu
And here is sample output
Inxi is a script that uses other programs to generate a well structured easy to read report about various hardware components on the system. Check out the full tutorial on inxi.
Print out cpu/processor related information
To learn more about the inxi command and its usage check out this post:
Inxi is an amazing tool to check hardware information on Linux
The hwinfo command is a hardware information program that can be used to collect details about various hardware components on a Linux system.
It also displays information about the processor. Here is a quick example:
If you don’t use the “–short” option it will display much more information about each cpu core like architecture and processor features.
To learn more about the hwinfo command check this post:
Check hardware information on Linux with hwinfo command
Those were some of the commands to check CPU information on Linux based systems like Ubuntu, Fedora, Debian, CentOS etc.
For some more command examples on checking cpu information check this post:
How to Check Processor and CPU Details on Linux – Command Examples
Most of the commands are command line based and show text output. For a GUI interface use the program called Hardinfo.
It shows hardware details about various components in a easy to use GUI interface.
If you know of any other useful command that can display information about the CPU, let us know in the comments below.
15 thoughts on “ 9 Commands to Check CPU Information on Linux ”
Very nicely explained. I highly recommend it in my articles. thank you.
Thank you for the information, i learn lot in this article. 🙂
Thanks for the Information.
Hi everybody, someone know how to get same information regarding the hardware where I installed a phisical linux ?
Thank you for sharing, it helping lot.
lshw now (DISTRIB_DESCRIPTION=”Linux Mint 17.3 Rosa”) includes a line like below at the bottom of it’s listing:
configuration: cores=4 enabledcores=4 threads=8
How to get the number of real cores, not HiperThreading.
For example, for i7, real cores are 4, but logical are 8. There is some way without root ?
check this post for commands to check the number of real cores.
are we still catting into grep?
grep ‘core id’ /proc/cpuinfo
yo Silver Moon, nice write-up bro. absolutelly useful stuff there, though the number of CPUs can be fetched using just ‘grep -c processor /proc/cpuinfo’. take care 🙂
Thank you for the helpful information. You can not look for “unique values” with the “cat /proc/cpuinfo |grep ‘core id’” command on a multiprocessor system. The situation gets even worse with hyperthreading enabled CPU’s.
Если вы полагаетесь на кого-то другого для управляемого хостинга ваших серверов Linux, вы не всегда можете точно знать, на каком типе сервера вы работаете. Однако есть быстрый и простой способ выяснить это.
Просто введите в командной строке следующую команду:
И тогда вы увидите большой длинный список всех процессоров в системе вместе со всей информацией о них, который должен выглядеть примерно так:
В этом примере вы увидите, что мы работаем на Intel Xeon L5520 с тактовой частотой 2,27 ГГц… и если бы мы показали полный пример, вы бы увидели, что на самом деле на машине 4 ядра.
How To Know Your Computer Model Name & Number, Processor Model & Number – System Information
How To Check CPU Speed Linux
Оборудование – Самые популярные статьи
5 вещей, которые следует учесть перед обновлением оперативной памяти вашего ПК
НЕКЕШЕРОВАННЫЙ КОНТЕНТ субин-ч/Шуттерсточк Было время, когда рецепт д�..
Помните MiniDisc? Вот как вы все еще можете использовать его в 2020 году
Кассеты и винил снова в моде, а что насчет MiniDisc? Цифровой формат Sony размером с пинту появился на �..
Эти «геймерские» продукты для ПК отлично подходят для офисной работы
НЕКЕШЕРОВАННЫЙ КОНТЕНТ Эккафан Шимпали / Shutterstock Бренды часто наклеива..
Что такое PlayStation Now и стоит ли это того?
НЕКЕШЕРОВАННЫЙ КОНТЕНТ Многие из нас испытывают ностальгию по играм старой школы для PlayStation, �..
Как восстановить заводские настройки Google Home
Если у вас возникли проблемы с ним или вы просто хотите его продать, вот как восстановить заводс..
Как прокачать игровой компьютер: руководство по освещению, цветам и другим модам
Итак, вы создали себе мощный игровой компьютер и даже приобрели корпус с окном на боковой панел�..
Как войти в среду загрузчика и восстановления Android
Бывают случаи, когда необходимо войти в загрузчик Android или систему восстановления – возможно, в �..
Спросите How-To Geek: спасение зараженного ПК, установка iTunes без раздувания и приручение сумасшедшего трекпада
НЕКЕШЕРОВАННЫЙ КОНТЕНТ У вас есть вопросы, и у нас есть ответы. Сегодня мы расскажем, как спаст..
CPU clock speed determines how fast your CPU can process instructions every second. It measures the number of cycles your CPU can execute, measured in GHz or Mhz. As it is hard to increase clock speed beyond a limit, multi-core processors have been introduced.
In Linux to check CPU speed, you have to get processor details and there are different tools available to fetch CPU information.
1. Using lscpu
Lscpu is a command used in Linux to display information about the CPU architecture. This command is a part of util-linux package.
Run lscpu command and the ‘CPU MHz’ field shows the CPU speed:
2. Using Dmesg
Dmesg is a command used in Linux to display messages from the kernel ring buffer and dumped to /var/log/messages.
We can filter Dmesg output using grep command, to find cpu speed:
3. From /proc/cpuinfo file
The /proc/cpuinfo system file gives the individual speed for each CPU Core.system.
4. Using i7z
The i7z is a dedicated tool for intel i3, i5, and i7 based CPUs to display processor states.
Run ‘sudo i7z’ command to gives the following output:
5. Using hwinfo
Hwinfo command is used in Linux to print detailed information about each hardware device.
Run the following command to get CPU speed:
$ sudo hwinfo –cpu
The following snapshot shows the output of the above command.
6. Using auto-cpufreq
Auto-cpufreq is a modern tool to automatically optimize CPU speed & power on the Linux platform. It actively monitors the laptop’s battery state, CPU usage, and system load for CPU speed and power optimization.
7. Using dmidecode
Dmidecode is a command used in Linux to gives detailed information about the system’s hardware components such as Processor, DIMMs, BIOS, etc in a human-readable format.
To print cpu speed, run:
8. Using Inxi script
Inxi is a featured rich and powerful script to print the system’s hardware information in Linux.
Run inxi command with ‘-C’ option to print the processor related information:
In this article, we explored different commands to get the CPU speed information on Linux OS. Please provide your feedback in the below comment section.
Is there any way to check at which clock speed my processor is running?
I have already tried cat /proc/cpuinfo but the clock speed I’m running isn’t showing. I know Ubuntu 12.04 (Precise Pangolin) requires 700 MHz and VGA, but will an AMD Mobile Sempron work?
19 Answers 19
From the command line type lscpu . The information will be at CPU MHz:
There are a couple of ways:
lscpu or more precise lscpu | grep “MHz” .
This will give you the general MHz for the CPU.
cat /proc/cpuinfo or more precise cat /proc/cpuinfo | grep “MHz” .
This will give you the individual MHz for each CPU Core. So if you have an Core 2 Duo, AMD Bulldozer, Core i7, etc.. it will show the MHz for each core.
lshw -c cpu or more precise version: lshw -c cpu | grep capacity
Will give you the general MHz. Same as lscpu .
sudo dmidecode -t processor or more precise: sudo dmidecode -t processor | grep “Speed” Will not only give you a MHz in use but also the Maximum you can push / overclock your CPU to.
Out of all of this, lshw and dmidecode provide the best information out of your CPU.
You can also target the current MHz detected by the kernel by querying the log files:
cat /var/log/dmesg | grep “MHz processor” – For the current detected MHz speed
cat /var/log/kern.log | grep “MHz processor” – For the current and past detected MHz speeds. Will not work in some cases, that is why I posted the dmesg one first.
And that’s all I can remember from the top of my head. I am fairly certain there are other ways, just don’t remember right now. Of course, talking about terminal ways.
There are a number of ways you can get information about the processor on your Linux system. I’ll show you my favorite tool for this task along with a few additional ways to check CPUs in Linux.
Get CPU info with lscpu command
This is the simplest command that shows the CPU information in a simple and concise output.
You can see the architecture of your system, number of processors, vendor information, cache information, processor speed etc.
It’s easier to remember as well because it is similar to the ls command. You can think of it as ‘list cpu’.
Well… that’s the processor information for my system and it should look somewhat similar for your Linux system as well.
As you can see, the most important information is that my system has Intel i5-7200U processor. I can go and search on the web for this model number to get more information.
But what does other fields in the output mean? What information do you really have about the processor here? Let me explain it to you. The information is too technical so you should have some basic understanding of the terms here.
lscpu command output explanation
The architecture for my system is 64-bit. Which means it’s a 64-bit processor.
The CPU op-mods are 32 bit and 64 bit meaning that it can operate both as a 32-bit and 64-bit processor. In other words, you can install both 32-bit and 64-bit operating systems on it.
Byte order is Little Endian. Which means that bytes are arranged as per Little Endian order.
The next 4 lines tells you about the number of processors, CPUs/cores and threads. I would suggest reading this article to understand a bit about processors. This picture from Intel also helps in visualizing what socket, CPU, core, threads mean.
Image Source: Intel
We have to go in the reverse order here. My system has 1 socket here which means it has one single chip for the CPUs.
That one socket has 2 cores. It means that the single chip has two physical CPUs on it. This tells you the number of real cores i.e. the actual physical CPUs.
And as you can see, each core has two threads. Threads are basically logical CPUs. The threads share physical execution resources of the physical core but the operating system sees them as separate cores. Read more on hyper- threading here.
In short, my system has one chip that contains two physical CPUs and each CPU is divided into two logical CPUs. And thus my dual core system is seen as having 4 CPUs by the operating system.
There is one NUMA node, the vendor is Intel and the CPU family is 6.
The CPU model number is 142 (not relevant in my opinion) and the model name is Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz (most important info).
Stepping is a number used by Intel to identify what level of design change a microprocessor was built to.
The current clock speed of my CPU is 900.054 MHz whereas its maximum capacity is 3100 MHz and 400 MHz.
BogoMIPS is “the number of million times per second a processor can do absolutely nothing”.
Virtualization is VT-x and is used to “help accelerate virtual machines created in VirtualBox, VMware, Hyper-V, and other apps”.
The next four entries are about cache. It has L1D (data cache) of 32K, L1I (instruction cache) of 32K, L2 cache of 256K and L3 cache of 3072K. Read this wiki page to get quick info on CPU caches.
Next is NUMA node for each CPU (both logical and physical CPUs).
The last line is the list of feature flags that are manufacturer specific. You may read more about them here.
This picture summarizes the most important processor information you get from the lscpu command.
Essential CPU information in Linux
In my opinion, lscpu command is more than enough to give you all the information you need.
Other commands to check CPU information in Linux
There are other ways to get CPU info in Linux command line. Let me show them one by one. However, I won’t go in detail to explain their output.
1. Check the content of /proc/cpuinfo
If you are aware of the directory structure in Linux, you already know that proc is a special directory in Linux. It’s actually a virtual filesystem that contains runtime system information such as system memory, devices mounted, hardware configuration etc.
If you want CPU information, you can read the content of the cpuinfo file in proc directory.
You would note that cpuinfo file has detailed information on each core of the processor.
For example, the first core of my CPU has the following information:
If you just want to number of CPU cores (including both physical and logical ones), you can use the grep command with the wc command.
2. Use lshw command
lshw stands for ‘list hardware’. Quite obviously, it means to list the hardware information.
Since the lshw command provides information about all the hardware on your system, it will be difficult to find exactly what you are looking for.
This is why lshw command provides option to narrow down your intended search.
To show only the processor information, you can use the lshw command in the following way:
This will show an output like this:
3. Use hwinfo
hwinfo is another command line tool to get hardware information of your Linux system.
You probably have to install hwinfo tool first. On Debian and Ubuntu, you can use the apt command to install it.
Once installed, you can get the CPU details in this way:
You’ll see an output similar to this for each core of the CPU:
4. dmidecode Command
dmidecode is another command to retrieve various kind of hardware information of your Linux system. You can check memory usage in Linux with it. You can also use it to get only the processor information.
This command needs sudo access as well. You’ll see an output like this:
Of course, there are many more tools that provide you hardware information in Linux. You can utilize them to get CPU info as well.
In my opinion, lscpu is the best command if you don’t want to remember anything. You can also rely on /proc/cpuinfo file. Just use these two and you’ll be set.
Since you learned to check CPU info, maybe you would like to read about checking the disk info in Linux as well.
I hope you liked this tutorial. If you have questions or suggestions, please leave a comment below.
Intel’s hybrid architecture tries to maximize speed and minimize power usage.
Andrew Cunningham – Jan 4, 2022 6:10 pm UTC
Share this story
- Share on Facebook
- Share on Twitter
- Share on Reddit
In addition to announcing new desktop chips, Intel is also expanding its Alder Lake architecture to laptops. Intel has announced 12th-generation Core chips for everything from high-end gaming laptops to thin-and-light ultrabooks, with low-end Pentiums and Celerons thrown in for good measure.
These laptop chips use Intel’s new hybrid processor architecture, which combines larger, faster performance cores with smaller, more efficient cores (P-cores and E-cores, respectively). How many P-cores and E-cores you get depends on the processor you’re buying, and you’ll need an operating system that supports Intel’s “Thread Director” technology to get the most performance out of the chips. Windows 11 supports it now, Linux support is in the works, and Windows 10 doesn’t have it and won’t be getting it.
High-performance: H- and P-series CPUs
Intel’s H-series processors are its top-performing laptop GPUs, and 12th-generation H-series chips will begin shipping in laptops starting in February. We’ve provided the tables with all of the core counts and clock speeds above, but to quickly summarize the differences between the eight different H-series CPUs:
- The Core i9 models include six P-cores and eight E-cores, plus an integrated GPU with 96 execution units (EUs). The i9-12900HK is the sole overclockable laptop processor across Intel’s entire 12th-gen lineup.
- The Core i7 chips also use six P-cores and eight E-cores, but with somewhat lower clock speeds. Their GPUs also include 96 EUs, but the lowest-end i7-12650H only uses 65 EUs.
- The Core i5 chips use four P-cores and eight E-cores, which lowers the maximum turbo power from 115 W to 95 W. Their GPUs include 80 EUs, except for the 48 EU i5-12450H.
Intel’s performance numbers focus mainly on the tippity-top-end Core i9-12900HK, which the company compares favorably to the last-gen i9-11980HK, the AMD Ryzen 5900HX, and Apple’s M1 Max and M1 Pro, though there aren’t many Apple comparisons, and Intel’s own slides indicate that Apple’s chips use a lot less power. Intel’s performance comparisons also don’t account for the just-announced Ryzen 6000-series laptop chips.
The integrated GPUs in these chips will usually be paired with some kind of dedicated GPU, since they mostly show up in gaming laptops and workstations. But the Intel GPU in these laptops is still usually responsible for driving internal and external displays, so decent performance is still relevant.
Intel is also introducing P-series CPUs, which will be shipping in the first quarter of this year—a lot of these models are essentially identical to the H-series at a hardware level but with reduced base power and max turbo power consumption numbers. This means that their clock speeds aren’t as high, and they won’t be able to run at their maximum boost speeds for as long, but they’ll be able to fit into thinner and lighter PCs with smaller cooling systems.
Most of the P-series Core i7 and Core i5 CPUs include four P-cores and eight E-cores, with L3 cache, clock speeds, and the number of GPU EUs you get going gradually down as you move down the stack. There is no Core i9 option, though the Core i7-1280P does offer the same combination of six P-cores and eight E-cores. And at the bottom, you’ve got a single Core i3-1220P, with two P-cores and eight E-cores.
September 26th, 2011
Summary: Learn how to get the number of processor cores via WMI and Windows PowerShell.
Hey, Scripting Guy! I need to perform an audit of computers on our network. Specifically, I am tasked with obtaining CPU information. I need the processor speed, number of cores, and number of logical processors. I feel like I should be able to use Windows PowerShell to do this, but I am not certain. Can you help?
Microsoft Scripting Guy Ed Wilson here. This has been a rather crazy time. This week I am in Seattle, Washington, talking to customers about Windows PowerShell. Later in the week, I will be talking to Windows PowerShell writers on campus at our Microsoft Office in Redmond. I fly back to Charlotte, and then I head north to Canada for a couple of weeks. I really enjoy the opportunity to meet with people who are using Windows PowerShell to solve real world problems. It is cool.
RS, to find out information about the CPU, I use the Windows Management Instrumentation (WMI) class Win32_Processor. In Windows PowerShell, a single line of code that uses the Get-WmiObject cmdlet to do the heavy lifting is all that is required. The syntax of a command to query WMI and return CPU information is shown here:
And I can shorten that command by using the gwmi alias:
In the following figure, I illustrate using the Get-WmiObject command and the default output from the command.
The Win32_Processor WMI class is documented on MSDN, and the article describes what all of the properties and coded values mean. But RS, for your requirements, I do not need that article. What I do need is a good way to select only the information you require. To do this, I am going to choose which properties I need. I then pipe the returned object to the Select-Object cmdlet. The reason for this is to remove the system properties that are automatically included with the returned WMI object. To avoid typing the properties twice (once for the Get-WmiObject cmdlet and once for the Select-Object cmdlet), I store the array of properties in the $property variable. The revised command is shown here:
Get-WmiObject -class win32_processor -Property $property |
Select-Object -Property $property
RS, you mentioned wanting to query computers on your network. The easy way to do this is to use the Active Directory cmdlets. I have an entire series of articles that talk about how to get the Active Directory cmdlets, and how to load and use them. You should refer to that series if you have questions about using Active Directory cmdlets.
RS, I wrote a script called GetAdComputersAndWMIinfo.ps1. The complete text of this script appears here.
$computer = $cn = $null
Get-ADComputer -filter * -Credential $cred |
if(Test-Connection -ComputerName $_.dnshostname @pingconfig)
$computer = $computer -split “`r`n”
foreach($cn in $computer)
if($cn -match $env:COMPUTERNAME)
Get-WmiObject -class win32_processor -Property $property |
Select-Object -Property $property >
elseif($cn.Length -gt 0)
Get-WmiObject -class win32_processor -Property $property -cn $cn -cred $cred |
Select-Object -Property $property > >
The first thing to do is to import the ActiveDirectory module. In a script, I recommend using the complete name for the ActiveDirectory module, instead of using a wildcard character pattern such as *AD*. This is because there are many modules available for download from the Internet that would match the *AD* pattern. If this is the case, you cannot be certain you have actually loaded the ActiveDirectory module. To load the ActiveDirectory module, use the Import-Module cmdlet as shown here:
Next, I intend to use splatting to simplify using the Test-Connection cmdlet. I wrote an article about splatting last week. Splatting uses a hash table for the parameters and associated values. This hash table is shown here:
I then initialize a couple of variables. This helps when running the command multiple times inside the Windows PowerShell ISE. I also retrieve credentials via the Get-Credential cmdlet. These two commands are shown here:
$computer = $cn = $null
Now, I use the Get-ADComputer cmdlet to retrieve a listing of computers from Active Directory Directory Services. I use the Foreach-Object cmdlet and pass the host names to the Test-Connection cmdlet to ensure the computer is online. I then create an array of computernames and store the names in the $computer variable. This is shown here:
Get-ADComputer -filter * -Credential $cred |
if(Test-Connection -ComputerName $_.dnshostname @pingconfig)
The array that gets created is an array of single letters. I split the string based on the carriage return and line feed characters “`r`n” and create a new array that contains the name of each computer in an array element. This process leaves an element at the end of the array; this empty element will be dealt with later in the script. Here is the code that creates the new array of ComputerNames:
$computer = $computer -split “`r`n”
I now define an array of property names that are to be collected from WMI. This is a straightforward value assignment:
The online computers are stored in the $computer variable. I use the foreach statement to walk through the array of computer names. If the computer name matches the local computer name, I do not use credentials because WMI would cause the command to fail. In addition, I check to see if the computer name is greater than 0 in length. This takes care of the empty element at the end of the array. This portion of the code is shown here:
foreach($cn in $computer)
if($cn -match $env:COMPUTERNAME)
Get-WmiObject -class win32_processor -Property $property |
Select-Object -Property $property >
elseif($cn.Length -gt 0)
Get-WmiObject -class win32_processor -Property $property -cn $cn -cred $cred |
Select-Object -Property $property > >
When the script runs, output similar to that shown in the following figure is displayed.
RS, that is all there is to using the Active Directory module to retrieve computer names, and to use WMI to query for the processor information.
Linux FAQ: How can I find Linux processor and memory information? (Also written as, How can I find Linux CPU information?, How can I find Linux RAM information?)
How to show the Linux CPU/processor
To see what type of processor/CPU your computer system has, use this Linux command:
As you can see, all you have to do is use the Linux cat command on a special file on your Linux system. (See below for sample processor output.)
How to show Linux memory information
To see your Linux memory information and memory stats use this command:
(See below for sample output.)
Linux processor command output
When I issue that Linux processor information command on my current hardware system, I see this output:
From that output I can see my current system is a two-processor Intel system, with additional information about the Intel CPU (CPUs, actually).
Linux memory information command
When I issue the Linux memory information command, I see the following output:
As you can see, my current Linux system has 2 GB RAM, with all the additional memory information shown there.
Summary: Linux processor and memory commands
I hope these Linux processor and memory commands have been helpful. When you have some spare time, take a look at the /proc filesystem on your Linux system for other system information you can find, including /proc/loadavg , /proc/vmstat , and much more.
CPU frequency scaling enables the operating system to scale the CPU frequency up or down in order to save power. CPU frequencies can be scaled automatically depending on the system load, in response to ACPI events, or manually by userspace programs.
CPU frequency scaling is implemented in the Linux kernel, the infrastructure is called cpufreq. Since kernel 3.4 the necessary modules are loaded automatically. For older kernels or CPUs, the recommended ondemand governor is enabled by default, whereas for newer kernels or CPUs, the schedutil governor is enabled by default. However, userspace tools like cpupower, acpid, Laptop Mode Tools, or GUI tools provided for your desktop environment, may still be used for advanced configuration.
- 1 Userspace tools
- 1.1 thermald
- 1.2 i7z
- 1.3 turbostat
- 1.4 cpupower
- 1.5 cpupower-gui
- 1.6 power-profiles-daemon
- 2 CPU frequency driver
- 2.1 Setting maximum and minimum frequencies
- 2.2 Disabling Turbo Boost
- 2.2.1 intel_pstate
- 2.2.2 acpi-cpufreq
- 2.2.3 x86_energy_perf_policy
- 3 Scaling governors
- 3.1 Tuning the ondemand governor
- 3.1.1 Switching threshold
- 3.1.2 Sampling rate
- 3.1.3 Make changes permanent
- 3.1 Tuning the ondemand governor
- 4 Control Intel CPUs energy performance policy
- 5 CPU idle driver
- 6 Interaction with ACPI events
- 7 Troubleshooting
- 7.1 BIOS frequency limitation
- 8 See also
thermald is a Linux daemon used to prevent the overheating of Intel CPUs. This daemon monitors temperature and applies compensation using available cooling methods.
By default, it monitors CPU temperature using available CPU digital temperature sensors and maintains CPU temperature under control, before HW takes aggressive correction action. If there is a skin temperature sensor in thermal sysfs, then it tries to keep skin temperature under 45C.
The associated systemd unit is thermald.service , which should be started and enabled.
i7z is an i7 (and now i3, i5, i7, i9) CPU reporting tool for Linux. It can be launched from a Terminal with the command i7z or as GUI with i7z-gui .
turbostat can display the frequency, power consumption, idle status and other statistics of the modern Intel and AMD CPUs.
cpupower is a set of userspace utilities designed to assist with CPU frequency scaling. The package is not required to use scaling, but is highly recommended because it provides useful command-line utilities and a systemd service to change the governor at boot.
The configuration file for cpupower is located in /etc/default/cpupower . This configuration file is read by a bash script in /usr/lib/systemd/scripts/cpupower which is activated by systemd with cpupower.service . You may want to enable cpupower.service to start at boot.
cpupower-gui AUR is a graphical utility designed to assist with CPU frequency scaling. The GUI is based on GTK and is meant to provide the same options as cpupower. cpupower-gui can change the maximum/minimum CPU frequency and governor for each core. The application handles privilege granting through polkit and allows any logged-in user in the wheel user group to change the frequency and governor.
The powerprofilesctl command-line tool from power-profiles-daemon handles power profiles (e.g. balanced, power-saver, performance) through the power-profiles-daemon service. GNOME and KDE also provide graphical interfaces for profile switching; see the following:
See the project’s README for more information on usage, use cases, and comparisons with similar projects.
Start/enable the power-profiles-daemon service. Note that when powerprofilesctl is launched, it also attempts to start the service (see the unit status of dbus.service ).
CPU frequency driver
cpupower requires modules to know the limits of the native CPU:
|intel_pstate||This driver implements a scaling driver with an internal governor for Intel Core (Sandy Bridge and newer) processors.|
|intel_cpufreq||Starting with kernel 5.7, the intel_pstate scaling driver selects “passive mode” aka intel_cpufreq for CPUs that do not support hardware-managed P-states (HWP), i.e. Intel Core i 5th generation or older.|
|acpi-cpufreq||CPUFreq driver which utilizes the ACPI Processor Performance States. This driver also supports the Intel Enhanced SpeedStep (previously supported by the deprecated speedstep-centrino module).|
|speedstep-lib||CPUFreq driver for Intel SpeedStep-enabled processors (mostly Atoms and older Pentiums)|
|powernow-k8||CPUFreq driver for K8/K10 Athlon 64/Opteron/Phenom processors. Since Linux 3.7 ‘acpi-cpufreq’ will automatically be used for more modern AMD CPUs.|
|pcc-cpufreq||This driver supports Processor Clocking Control interface by Hewlett-Packard and Microsoft Corporation which is useful on some ProLiant servers.|
|p4-clockmod||CPUFreq driver for Intel Pentium 4/Xeon/Celeron processors which lowers the CPU temperature by skipping clocks. (You probably want to use a SpeedStep driver instead.)|
To see a full list of available modules, run:
Load the appropriate module (see Kernel modules for details). Once the appropriate cpufreq driver is loaded, detailed information about the CPU(s) can be displayed by running
Setting maximum and minimum frequencies
In some cases, it may be necessary to manually set maximum and minimum frequencies.
To set the maximum clock frequency ( clock_freq is a clock frequency with units: GHz, MHz):
To set the minimum clock frequency:
To set the CPU to run at a specified frequency:
Alternatively, you can set the frequency manually:
The available values can be found in /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_frequencies or similar. 
Example 9-1 Displaying a System’s Host ID Number
The following example shows sample output from the hostid command.
How to Display a System’s Product Name
The -b option to the prtconf command enables you to display a system’s product name. For more information about this feature, see the prtconf(1M) man page.
- To display the product name for your system, use the prtconf command with the -b option, as follows:
Example 9-2 Displaying a System’s Product Name
This example shows sample output from the prtconf -b command.
This example shows sample output from the prtconf -vb command.
How to Display a System’s Installed Memory
- To display the amount of memory that is installed on your system, use the prtconf command.
Example 9-3 Displaying a System’s Installed Memory
The following example shows sample output from the prtconf command. The grep Memory command selects output from the prtconf command to display memory information only.
How to Display Default and Customized Property Values for a Device
To display both the default and customized property values for devices, use the prtconf command with the -u option. For more information about this option, see the prtconf(1M) man page.
Display the default and customized properties of a driver.conf file.
The output of the prtconf -u command displays the default and customized properties for all of the drivers that are on the system.
Example 9-4 Displaying Default
This example shows the default and custom properties for the bge.conf file. Note that vendor-provided configuration files are located in the /kernel and /platform directories, while the corresponding modified driver configuration files are located in the /etc/driver/drv directory.
For more information, see the driver(4) and driver.conf(4) man pages.
How to Display the Date and Time
- To display the current date and time according to your system clock, use the date command.
Example 9-5 Displaying the Date and Time
The following example shows sample output from the date command.
Identifying Information About Chip Multithreading Features
The psrinfo command has been modified to provide information about physical processors, in addition to information about virtual processors. This enhanced functionality has been added to identify chip multithreading (CMT) features. The new -p option reports the total number of physical processors that are in a system. Using the psrinfo -pv command will list all the physical processors that are in the system, as well as the virtual processors that are associated with each physical processor. The default output of the psrinfo command continues to display the virtual processor information for a system.
For more information, see the psrinfo(1M) man page.
For information about the procedures that are associated with this feature, see How to Display a System’s Physical Processor Type.
How to Display a System’s Physical Processor Type
Use the psrinfo -p command to display the total number of physical processors on a system.
Use the psrinfo -pv command to display information about each physical processor on a system, and the virtual processor that is associated with each physical processor.
When you use the psrinfo -pv command on an x86 based system, the following output is displayed:
How to Display a System’s Logical Processor Type
- Use the psrinfo -v command to display information about a system’s processor type.
On an x86 based system, use the isalist command to display the virtual processor type.
Example 9-6 SPARC: Displaying a System’s Processor Type
This example shows how to display information about a SPARC based system’s processor type.
Example 9-7 x86: Displaying a System’s Processor Type
This example shows how to display information about an x86 based system’s processor type.
|Prev||Chapter 9. Kernel Configuration Recipes||Next|
If you wish to have the Linux kernel run as fast as possible for your specific processor and hardware type, there are a few options that you can set to get the last bit of performance out of the hardware. This section will show some of the different processor-specific options that you can tune for your processor.
A wide range of specific processor options are available to be changed in the Linux kernel. The most important one for our purpose specifies the exact type of CPU you are using this kernel for. To determine the type of processor you are using, run the following command:
Note that your response will probably not be identical; what is important is that the command shows the model name of the processor present on the system.
Select the subarchitecture type of the processor:
Only if your machine is one of the other types in the preceding list should you select anything other than the PC-compatible option. However, if you wish to create a single kernel that will run on all of the types of machines shown, select the Generic architecture option. Some of the above options might not be present if you have not also selected the Symmetric multi-processing support option.
Select the processor family type. The PC-compatible option needs to be selected from the previous options for this submenu to be displayed:
For more details on this configuration item, please refer to M386 for a full description of how to pick the proper processor type depending on what processor you have, and what range of machines you wish the kernel to run on.
If your system contains more than one CPU, or a Hyperthreaded or Dual Core CPU, you should select the multiprocessor option for the Linux kernel in order to take advantage of the additional processors. Unless you do, you will be wasting the other processors by not using them at all.
Systems running as servers have very different workload requirements from those being used as a desktop for video and audio applications. The kernel allows different modes of “preemption” in order to handle these different workloads. Preemption is the ability of the kernel to interrupt itself while it is doing something else, in order to work on something with a higher priority, such as updating a sound or video program.
To change to a different preemption model, use this menu:
If you wish to make the kernel even more responsive to higher priority tasks than the general preemption option provides, you can also allow interruptions to one of the main internal kernel locks:
This option is able to be selected only if you have already selected either the Preemptible Kernel or Symmetric multi-processing support options.
The Linux kernel has the ability to suspend itself to disk, allowing you to disconnect the power, and then at a later time, power up and resume exactly where the machine was when it was suspended. This functionality is very useful on laptops that run Linux.
Enable this by selecting:
The kernel needs to know where to save the suspended kernel image to, and then later where to resume it from. This location is usually a kernel swap partition on the disk. To specify which partition this should be:
Make sure you specify the proper partition to suspend the machine to, and do not use a partition that is being used by the system for data. The proper partition name can be found by running the following command:
Use the output of the preceding command in this kernel configuration option, and on the kernel boot line where it specifies where the kernel should be resumed from. After the machine has been suspended, to have it resume properly, pass the resume=/dev/swappartition argument to the kernel command line to have it use the proper image. If you do not want to have the suspended image restored, use the noresume kernel command line argument.
CPU Frequency Scaling
Most modern processors can slow down the internal clock of the processor to conserve power and battery life. Linux supports this ability and offers a variety of power “governors.” Different governors implement different heuristics in order to determine how to vary the processor speed depending on the system load and other variables.
Enable the basic frequency scaling functionality:
Select the different type of frequency governors you wish to use:
For more information on what the different governors do, see CPU_FREQ.
Select the default governor you wish to have running when the maching boots:
Select the specific processor type on the machine. For details on how to determine the processor type of the machine, see the section called “Processor Types”.
Different Memory Models
Linux on 32-bit Intel hardware can access up to 64 Gigabytes of memory, but the address space of the 32-bit processor is only 4 Gigabytes. To work around this limitation, Linux can map the additional memory into another area and then switch to it when other tasks need it. But if your machine has a smaller amount of memory, it is easier for Linux not to have to worry about handling the bigger areas, so it is beneficial to tell the kernel how much memory you want it to support. For a more detailed description of this option, please see NOHIGHMEM.
Linux supports three different memory models for 32-bit Intel processors, depending on the memory available:
Under 1 Gigabyte of physical memory
Between 1 and 4 Gigabytes of physical memory.
Greater than 4 Gigabytes of physical memory.
But have you ever thought of knowing what kind of CPU your computer has and how fast it runs? There exist many reasons why you would want to know what CPU you have in your system. Perhaps you are troubleshooting any hardware issue or loading a kernel module. Whatever the cause is, determining the CPU speed and type from the command line is quite easy in Linux. Several commands can be utilized for obtaining information about your processor, including CPU frequency. In this article, we have compiled some of those commands to get to know your CPU better.
Dmseg is used for showing messages from the ring buffer of the kernel. In the following example, we have combined the Dmseg command with grep for filtering out the CPU speed from other related information.
lscpu command helps you to know about your CPU architecture. Lscpu pre-exists in the util-Linux package. Write out the below-given command in your terminal.
In the output, check out the “CPU MHz.”
i7z is an exclusive tool for retrieving the processor states in Intel-based CPUs such as i3, i5, and i7.
Executing this command will provide you the following information:
Retrieving CPU speed from “/proc/cpuinfo” file
The “/proc/cpuinfo” file has all content related to the individual CPU cores. Now we will utilize the ‘grep’ and ‘cat’ command to only extract the information about the CPU speed from this file.
Instead of using “grep,” you can also use the “less” command for the same execution purpose.
In the terminal, the detailed information about each hardware device can be printed using “hwinfo.” We will specify the “–cpu” parameter in the “hwinfo” command for displaying only the CPU speed.
inxi is a powerful Linux script that permits you to print out the system’s hardware details. Execute the inxi command in your terminal with the “-C” option for displaying the processor-related information.
As a result of efficient technology, we have developed a need for speed everywhere we go. CPU and its frequency or clock speed are the most widely associated characteristics with the high-performance of any computer. This post looks at how to get CPU speed details using various commands in Linux.
About the author
Talha Saif Malik
Talha is a contributor at Linux Hint with a vision to bring value and do useful things for the world. He loves to read, write and speak about Linux, Data, Computers and Technology.
Step 1: First open your terminal by using “Ctrl +Alt+T” then under ‘Terminal’, type: “uname -a”. This command provides kernel name, network node hostname, kernel release, kernel version, machine hardware name and processor type. Step 2: In the same way you can use “uname -m” command, just to check your processor type.
How do I know what generation my Intel processor is Ubuntu?
Find your CPU model on Ubuntu
- Click on the Ubuntu menu in the top left corner and type the word terminal.
- Click on the Terminal application.
- Paste or type this in the black box without mistyping and press the Enter key : cat /proc/cpuinfo | grep “model name” . Licence.
How do I know what generation my Intel processor is Linux?
Vendor and model of processor
Search the /proc/cpuinfo file with the grep command. Once you learn the name of the processor, you can use the model name to look up the exact specifications online on Intel’s website.
How do I check my processor speed Ubuntu?
There are a couple of ways:
- lscpu or more precise lscpu | grep “MHz” . …
- cat /proc/cpuinfo or more precise cat /proc/cpuinfo | grep “MHz” . …
- lshw -c cpu or more precise version: lshw -c cpu | grep capacity.
How do I check my processor?
- Click Start.
- Select the Control Panel.
- Select System. Some users will have to select System and Security, and then select System from the next window.
- Select the General tab. Here you can find your processor type and speed, its amount of memory (or RAM), and your operating system.
How do I know what generation my i5 is?
Go to Start > Settings > System > About. Next to Processor, you will see your chipset listed. You will see your processor and the first number after i3, i5, or i7 lets you know what generation you have.
How do I check my CPU and memory utilization on Linux?
How To Check CPU Usage from Linux Command Line
- top Command to View Linux CPU Load. Open a terminal window and enter the following: top. …
- mpstat Command to Display CPU Activity. …
- sar Command to Show CPU Utilization. …
- iostat Command for Average Usage. …
- Nmon Monitoring Tool. …
- Graphical Utility Option.
What is the use of top command in Linux?
top command in Linux with Examples. top command is used to show the Linux processes. It provides a dynamic real-time view of the running system. Usually, this command shows the summary information of the system and the list of processes or threads which are currently managed by the Linux Kernel.
How do I find processor in Linux?
You can use one of the following command to find the number of physical CPU cores including all cores on Linux:
- lscpu command.
- cat /proc/cpuinfo.
- top or htop command.
- nproc command.
- hwinfo command.
- dmidecode -t processor command.
- getconf _NPROCESSORS_ONLN command.
How do I check my processor speed?
If you’re wondering how to check your clock speed, click the Start menu (or click the Windows* key) and type “System Information.” Your CPU’s model name and clock speed will be listed under “Processor”.
What is my processor speed Linux?
In Linux to check CPU speed, you have to get processor details and there are different tools available to fetch CPU information.
8 Ways to Check CPU Clock Speed on Linux
- Using lscpu. …
- Using Dmesg. …
- From /proc/cpuinfo file. …
- Using i7z. …
- Using hwinfo. …
- Using auto-cpufreq. …
- Using dmidecode. …
- Using Inxi script.
How do I know if Turbo Boost is enabled?
Once on the processor’s specification page, find Performance Specifications. Look for Intel® Turbo Boost Technology 2.0 Frequency for Intel® Turbo 2.0 support. You can also check under Advanced Techonlogies for the Intel® Turbo Boost Technology 2.0 option.
Информация об аппаратном обеспечении CPU
Информация о CPU (Central Processing Unit. Центральный процессор) включает в себя подробные сведения о процессоре, такие как архитектура, название производителя, модель, количество ядер, скорость каждого ядра и т.д.
В linux существует довольно много команд для получения подробной информации о CPU.
В этой статье мы рассмотрим некоторые из часто встречающихся команд, которые можно использовать для получения подробной информации о CPU.
Файл /proc/cpuinfo содержит подробную информацию об отдельных ядрах CPU.
Выведите его содержимое с помощью less или cat .
Каждый процессор или ядро перечислены отдельно, а различные подробности о скорости, размере кэша и названии модели включены в описание.
Чтобы подсчитать количество процессоров, используйте grep с wc
Количество процессоров, показанное в /proc/cpuinfo, может не соответствовать реальному количеству ядер процессора. Например, процессор с 2 ядрами и гиперпоточностью будет показан как процессор с 4 ядрами.
Чтобы получить фактическое количество ядер, проверьте идентификатор ядра на наличие уникальных значений
Соответственно, есть 4 разных идентификатора ядра. Это указывает на то, что существует 4 реальных ядра.
2. lscpu – отображение информации об архитектуре CPU
lscpu – это небольшая и быстрая команда, не требующая никаких опций. Она просто выводит информацию об аппаратном обеспечении CPU в удобном для пользователя формате.
Hardinfo – это gui инструмент на базе gtk, который генерирует отчеты о различных аппаратных компонентах. Но он также может запускаться из командной строки, в случае если отсутствует возможность отображения gui (Graphical User Interface — графический интерфейс пользователя).
Он создаст большой отчет о многих аппаратных частях, читая файлы из каталога /proc. Информация о CPU находится в начале отчета. Отчет также может быть записан в текстовый файл.
Hardinfo выполняет несколько эталонных тестов, занимающих несколько минут, прежде чем вывести отчет на экран.
Команда lshw может отобразить ограниченную информацию о CPU. lshw по умолчанию показывает информацию о различных аппаратных частях, а опция ‘ -class ‘ может быть использована для сбора информации о конкретной аппаратной части.
Производитель, модель и скорость процессора отображаются правильно. Однако из приведенного выше результата невозможно определить количество ядер в процессоре.
Чтобы узнать больше о команде lshw, ознакомьтесь с этой статьей:
Команда nproc просто выводит количество доступных вычислительных блоков. Обратите внимание, что количество вычислительных блоков не всегда совпадает с количеством ядер.
Команда dmidecode отображает некоторую информацию о CPU, которая включает в себя тип сокета, наименование производителя и различные флаги.
Команда cpuid собирает информацию CPUID о процессорах Intel и AMD x86.
Программа может быть установлена с помощью apt на ubuntu
А вот пример вывода
Inxi – это скрипт, который использует другие программы для создания хорошо структурированного легко читаемого отчета о различных аппаратных компонентах системы. Ознакомьтесь с полным руководством по inxi.
Вывод соответствующей информации о CPU/процессоре
Чтобы узнать больше о команде inxi и ее использовании, ознакомьтесь с этой статьей:
Команда hwinfo – это программа для получения информации об оборудовании, которая может быть использована для сбора подробных сведений о различных аппаратных компонентах в системе Linux.
Она также отображает информацию о процессоре. Вот быстрый пример:
Если не использовать опцию “–short”, команда отобразит гораздо больше информации о каждом ядре CPU, например, архитектуру и характеристики процессора.
Чтобы более подробно изучить команду hwinfo, ознакомьтесь с этой статьей:
Это были некоторые команды для проверки информации о CPU в системах на базе Linux, таких как Ubuntu, Fedora, Debian, CentOS и др.
Примеры других команд для проверки информации о CPU смотрите в этой статье:
Большинство команд обрабатываются с помощью интерфейса командной строки и выводятся в текстовом формате. Для GUI интерфейса используйте программу Hardinfo.
Она показывает подробности об аппаратном обеспечении различных компонентов в простом для использования GUI интерфейсе.
Если вы знаете какую-либо другую полезную команду, которая может отображать информацию о CPU, сообщите нам об этом в комментариях ниже
Если вы хотели бы узнать подробнее о формате обучения и программе, познакомиться с преподавателем курса — приглашаем на день открытых дверей онлайн. Регистрация здесь.
А если вам интересно развитие в этой сфере с нуля до pro, рекомендуем ознакомиться с учебной программой специализации.
You monitor system hardware using the following commands and utilities:
Retrieve Hardware Information Using decode-syseeprom
The decode-syseeprom command enables you to retrieve information about the switch’s EEPROM. If the EEPROM is writable, you can set values on the EEPROM.
The following is an example. The command output is different on different switches:
Edgecore AS5712-54X, AS5812-54T, AS5812-54X, AS6712-32X and AS6812-32X switches support a second source power supply. This second source device presents at a different I2C address than the primary. As a result, whenever decode-syseeprom attempts to read the EEPROM on the PSUs in these systems, both addresses are checked. When the driver reads the location that is not populated, a warning message like the following is logged:
This is expected behavior on these platforms.
Usage: /usr/cumulus/bin/decode-syseeprom [-a][-r][-s [args]][-t ][-e][-m]
You can also use the dmidecode command to retrieve hardware configuration information that is populated in the BIOS.
You can use apt-get to install the lshw program on the switch, which also retrieves hardware configuration information.
Monitor System Units Using smond
The smond daemon monitors system units like power supply and fan, updates their corresponding LEDs, and logs the change in the state. Changes in system unit state are detected via the cpld registers. smond utilizes these registers to read all sources, which impacts the health of the system unit, determines the unit’s health, and updates the system LEDs.
Use smonctl to display sensor information for the various system units:
When the switch is not powered on, smonctl shows the PSU status as BAD instead of POWERED OFF or NOT DETECTED. This is a known limitation.
On the Dell S4148 switch, smonctl shows PSU1 and PSU2; however in the sensors output, both PSUs are listed as PSU1.
Some switch models lack the sensor for reading voltage information, so this data is not output from the smonctl command.
For example, the Dell S4048 series has this sensor and displays power and voltage information:
The Penguin Arctica 3200c does not have this sensor:
The following table shows the smonctl command options.
Usage: smonctl [OPTION]. [CHIP].
|-s , –sensor||Displays data for the specified sensor.|
|-v , –verbose||Displays detailed hardware sensors data.|
For more information, read man smond and man smonctl .
You can also run these NCLU commands to show sensor information: net show system sensors , net show system sensors detail , and net show system sensors json .
Monitor Hardware Using sensors
Use the sensors command to monitor the health of your switch hardware, such as power, temperature and fan speeds. This command executes lm-sensors .
Even though you can use the sensors command to monitor the health of your switch hardware, the smond daemon is the recommended method for monitoring hardware health. See Monitor System Units Using smond above.
- Output from the sensors command varies depending upon the switch hardware you use, as each platform ships with a different type and number of sensors.
- On a Mellanox switch, if only one PSU is plugged in, the fan is at maximum speed.
The following table shows the sensors command options.
Usage: sensors [OPTION]. [CHIP].
|-c , –config-file||Specify a config file; use – after -c to read the config file from stdin ; by default, sensors references the configuration file in /etc/sensors.d/ .|
|-s , –set||Executes set statements in the config file (root only); sensors -s is run once at boot time and applies all the settings to the boot drivers.|
|-f , –fahrenheit||Show temperatures in degrees Fahrenheit.|
|-A , –no-adapter||Do not show the adapter for each chip.|
|–bus-list||Generate bus statements for sensors.conf .|
If [CHIP] is not specified in the command, all chip information is printed. Example chip names include:
- lm78-i2c-0-2d *-i2c-0-2d
- lm78-i2c-0-* *-i2c-0-*
- lm78-i2c-*-2d *-i2c-*-2d
- lm78-i2c-*-* *-i2c-*-*
- lm78-isa-0290 *-isa-0290
- lm78-isa-* *-isa-*
Monitor Switch Hardware Using SNMP
The Net-SNMP documentation is discussed here.
Keep the Switch Alive Using the Hardware Watchdog
Cumulus Linux includes a simplified version of the wd_keepalive(8) daemon from the standard watchdog Debian package. wd_keepalive writes to a file called /dev/watchdog periodically to keep the switch from resetting, at least once per minute. Each write delays the reboot time by another minute. After one minute of inactivity where wd_keepalive doesn’t write to /dev/watchdog , the switch resets itself.
The watchdog is enabled by default on all supported switches, and starts when you boot the switch, before switchd starts.
To disable the watchdog, disable and stop the wd_keepalive service:
Home » SysAdmin » How to Check CPU Temperature on Linux
Like any electrical component, CPUs generate heat when being used. Some resource-demanding programs cause the CPU to increase the clock speed, which results in higher temperatures. Dust buildup also causes the CPU to overheat.
High temperatures shorten the lifespan of sensitive components, so keeping track of CPU temperatures is crucial. This way, you prevent performance throttling or component damage.
In this tutorial, you will learn how to use different tools and in-built utilities to check CPU temperature on Linux machines.
- A machine running Linux
- An account with sudo/root privileges
Check CPU Temperature Using Lm-Sensors
Lm-sensors is a command-line utility for hardware monitoring. Use the tool to check the temperature of the CPU and other components. Follow these steps to install and configure Lm-sensors:
1. Open the terminal and install these packages using a package manager for your distribution. In Ubuntu, use the following command:
Wait for the lm-sensors and hddtemp to finish downloading and installing.
2. Execute the sensors command to see the CPU temperature. The output shows the current temperature readings of all sensors in the machine. The results include the temperature of each core and maximum thresholds.
3. To check SSD and hard drive temperatures, execute the following command:
The output shows the temperature of the selected disk.
4. To see which system components you can monitor, run sudo sensors-detect .
Answer YES to multiple scanning requests until the system scan is complete.
When the scan completes, the output shows the summary.
5. To ensure that system monitoring works, load the needed modules using the following command:
6. To run the sensors command repeatedly and get real-time data in the terminal, execute the following command:
The output refreshes every two seconds and displays the current CPU temperature reading.
Note: To check CPU usage on Linux, read our tutorial on How to check CPU usage.
Check CPU Temperature Using Psensor
Psensor is a GUI app that allows you to monitor the temperature of various system components. This utility also allows you to monitor CPU usage and fan speed.
Psensor includes an applet indicator for Ubuntu, allowing you to display the temperature in the top panel to notify you when the temperatures get too high.
Before installing Psensor, you need to install and configure Lm-sensors.
1. Run this command to install the necessary packages:
2. Next, scan for sensors in your machine:
Answer YES to any scan requests until the scan is completed.
3. To make sure the packages are installed, execute the sensors command.
4. Update the package repository with sudo apt update .
5. Install Psensor using the following command:
Answer YES and wait for the installation to finish.
Search for Psensor in the app menu and open the utility. The app displays a graph of the selected values and shows the CPU temperature, CPU and memory usage, free RAM, GPU temperature, and HDD temperature.
To configure Psensor and set which stats you want to see, follow these steps:
1. Click Psensor in the menu bar, followed by Preferences.
2. Check off the boxes for the options you want – whether Psensor launches on system startup, the update interval, graph colors, etc.
3. To show CPU or HDD temperatures in the top panel, go to Sensor Preferences under the Application Indicator. Enable the Display sensor in the label option.
Check Temperature Without Third-Party Utilities
There is a way to use the in-built utilities to check the CPU temperature if you don’t want to use third-party apps.
1. To check the CPU temperature without installing a third-party app, use the following command:
The output shows the CPU temperature in the five-digit format. Here, 49000 means 49C.
2. If you get several thermal zones and different temperatures, execute the following command to see what a single thermal zone represents:
For example, run cat /sys/class/thermal/thermal_zone2/type to see the type of thermal zone 2.
The CPU temperature is in the zone labeled x86_pkg_temp.
3. To see what all the thermal zones are referring to, use:
The output shows the last stored temperature for that thermal zone in degrees Celsius. In this example, there is only one thermal zone, labeled x86_pkg_temp, which represents the CPU temperature.
You now know how to check CPU temperature on Linux using various utilities. The guide also showed how to configure the tools to display other information, such as GPU and HDD temperature.
There’s nothing more frustrating than installing Linux on your PC and the whole system still feeling sluggish. After spending money building, purchasing or upgrading a machine, you expect it to be snappy. However, that’s not always the case, and with Linux, you can do quite a bit of investigating to check out what’s wrong. Today, we show you how to find the cause of your Linux machine running too slow.
Why Is My Linux Computer Running Slow?
Your Linux computer could be running slow for any one of the following reasons:
- Unnecessary services started at boot time by systemd (or whatever init system you’re using)
- High resource usage from multiple heavy-use applications being open
- Some kind of hardware malfunction or misconfiguration
Before we find out how we can speed up a Linux computer, we need to know which methods can help us find the services started at boot time, processes running with higher or lower priorities, CPU health status, and whether the RAM is filled with much more data than it requires, and also check whether the swap memory area is full. Lastly, we also need to check if the hard disk is working well.
Examine CPU Information
When you want to speed up a slow Linux computer, the first step is to check CPU information. If your computer is struggling to open a program like Firefox or LibreOffice, there’s a possibility that it’s because your CPU is not powerful enough for heavyweight applications.
Open a terminal and run one of the following commands:
How to get lots of info about your Mac’s processor
Here’s how you can use the command line to get a ton of information about your Mac’s CPU. This info includes lots of technical data including thread count, cache size, clock speed and numerous other interesting tidbits. 1. Open a terminal window on your Mac. 2. Type in the following command and then hit enter: sysctl -a | grep machdep.cpu 3. You’ll see a bunch of information appear that will tell you a lot about your Mac’s processor.
For more, see the original article at the link below.
This story, “Use the Mac’s command line to get detailed CPU information” was originally published by ITworld .
Jim Lynch is a technology analyst and online community manager who has also written for many leading industry publications over the years, including ITworld, InfoWorld, CIO, PCMag, ExtremeTech, and numerous others.
The opinions expressed in this blog are those of Jim Lynch and do not necessarily represent those of IDG Communications, Inc., its parent, subsidiary or affiliated companies.
If you have a server on collocation with the super-fast CPU, that doesn’t mean that you get it running at full power.
Here is a preamble. When doing inventory of Linux servers, that I’m administering, I’ve found that some of them are running on lower CPU speed, then they could. This can be easily checked with this command:
What you can see:
Oops, we are paying for 2 Core 2Ghz CPU that runs on 600Mhz on one core and 1000Mhz on another.
There will be other lines for all the CPUs/cores/threads, probably with the same values.
This feature is nice, if we are running workstation, but what I’ve noticed, we do have the same CPU throttling on Ubuntu Server 10.04 builds and on CentOS 5.3, 5.4 and 5.5 builds (thus on RedHat too).
After hours of digging google, I’ve found that:
– this problem is very common
– there are several bug reports about this issue
– this is not BIOS settings problem, because on dual boot systems, CPU runs at full speed on Windows
– there are no 100% working solutions or they are too difficult to find
– this is not a bug, but a ‘feature’ of the new kernels, it is implemented differently on 2.6.18 (CentOS) and 2.6.32 (Ubuntu).
Here is a tip how to disable it on running system:
1) Check that ‘kondemand’ thread is running, run as root: “pgrep -lf ondemand”
the output should be like:
2) Check that current cpu speed differs from the maximum:
3) Change CPU governor from ‘ondemand’ to ‘performance’ for all CPUs/cores, run as root:
4) Check that your changes have been applied:
5) If you are running ‘cpuspeed’, ‘cpufreqd’, ‘powerd’ or other daemons, that can control CPU stepping, just stop them, if you really need to run your system on 100% of the CPU speed.
6) On Linux 2.6.32 (On RedHat 6, and Oracle Unbreakable Linux 6) remove CPU scaling kernel modules:
Ensure that no ‘kondemand’ kernel threads are running:
7) To make changes permanent (on reboot):
– On Ubuntu, modify /etc/init.d/ondemand script:
OR ALTERNATIVELY just remove all references to ondemand from /etc/rc?.d/
– On CentOS, just create a new script /etc/init.d/ondemand:
I’m using ‘ondemand’ name of the script, this may be a little bit misleading (because really it is a ‘performance’), but you may change it.
Originally posted 2016-01-22 17:22:09.
dmidecode ist ein Linux-Tool zur Anzeige der DMI Tabellen in einer lesbaren Form. DMI (Desktop Management Interface) ist ein Teil der System Management BIOS (SMBIOS) Spezifikation. Aus Benutzersicht ist DMI eine vom BIOS bereitgestellte Tabelle, die Informationen über die vorhandene Hardware enthält.
- 1 dmidecode Beispiel
- 1.1 /proc/cpuinfo
- 2 dmidecode Parameter
- 3 Weitere Informationen
Das folgende Beispiel zeigt die Ausgabe von dmidecode auf einem Thomas-Krenn-Server mit Supermicro X9SCM-F Mainboard:
Zur Ergänzung ist hier die Ausgabe von /proc/cpuinfo vom gleichen System:
dmidecode -t TYPE erlaubt es, als TYPE den Bereich einzugrenzen, für den Informationen anzeigt werden sollen. Standardmäßig zeigt dmidecode die Informationen von allen Typen.
Folgende Typen können dabei angegeben werden (Quelle Manpage von dmidecode):
Anstelle eines TYPE-Codes können Sie auch ein Keyword angeben. Die folgenden Keywords sind dabei möglich:
- Get Information About Your BIOS / Server Hardware From a Shell Without Opening Chassis (BIOS Decoder)
Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 – ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg – heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.
At some point, everyone learns that a CPU has a variable number of cores inside, and that number influences its performance. The next natural impulse is to find out how many cores your CPU has.
The good news is, figuring that out is extremely easy in Windows 10.
Simply tap the Windows key (or click on the Start menu button), then begin typing the word “system.” The top match should be “System” or “System Information.” Either will work, so hit the Enter key or click on that result, and a window will appear that lists your PC’s hardware information—including the name of your processor and the number of cores that it has.
Looking at the System or System Information in Windows 10 will give you the basic info you’re looking for, but to get core and thread (“logical processor”) count, open the Task Manager instead.
Alternatively, you can press Ctrl + Shift + Esc to bring up the Task Manager window, then click on the Performance tab (second from the left). At the top right, you’ll see the name of your processor and the number of cores that it has. You’ll also see a nifty graph showing your CPU’s utilization in real time. Underneath the graph will be more detailed stats, like the base clock speed, cores, and logical processors (more commonly known as “threads”).
The Ryzen 7 2700X CPU in this PC has 8 cores and 16 threads (“logical processors”).
That’s all you have to do to find out your core count. To understand how powerful your CPU actually is, you’ll need to dig a little deeper.
Bigger isn’t always better
For the most part, core count is just one clue about CPU performance. Processor frequency (aka clock speed), multithreading, microarchitecture generation, the type of CPU (desktop or mobile), and software optimization also play a role.
If you want, you can dive into most of those details by looking up your processor’s specs on the Intel Ark website or AMD’s processor specification website, which provide the full rundown on Intel and AMD’s processors, respectively. But the easier way to tell how well your processor stacks up against others is to simply look up benchmark results for the things you do regularly: office work, gaming, video encoding, etc.
Generally the newer the processor, the more efficient and more powerful it is, but not all generations make huge leaps in performance over previous ones. Looking up actual test results makes it clearer what you’re getting between gens. You may find that you don’t need to upgrade —or conversely, moving to a lower core count CPU from the newest generation will still give your PC a gigantic boost.
Going off core count, you might expect today’s top-tier Intel Core i9-11900K to underperform the AMD Ryzen 9 5900X. But go through the benchmarks and you’ll see that the 8-core 11900K hangs pretty well with the 12-core 5900X.
The same applies to competing CPUs from the same time period. You might expect a top-tier part with fewer cores to underperform a rival maker’s best chip, but that’s not necessarily the case. Sometimes they end up being in the same ballpark, making the choice more about cost, availability, and the specific programs and games you’ll spend time in. So too for thread count, or a CPU’s capacity to handle multiple processes at the same time. CPUs with higher thread counts are just better multitaskers, and that only matters when you regularly do multithreaded work. Even when that’s the case, still be aware that microarchitecture generation still plays a more dominant role in CPU performance.
In summary: Core count isn’t everything, nor thread count, nor even the age of those cores and threads. It’s more nuanced than that. More importantly, if you have no complaints about your PC when using it, then you have no need for an upgrade or change.
Obtaining system hardware information is not a difficult task for Linux GUI users, but could be a complex task for Linux CLI users.
There are numerous tools available in Linux, to locate system hardware information, but we will show you how to check hardware manufacturer name, system model and serial number.
We all understand the importance of having this information while reaching out to hardware vendor & this article covers best four commands, that can ease the process & help users for tracking the data faster.
Method-1 : Using Dmidecode Command
Dmidecode is a tool that reads computer’s DMI table contents and display’s system hardware information in a human-readable format.
The DMI table accommodates the details of system’s hardware components, along with other useful information such as, serial number, Manufacturer information, Release Date, and BIOS revision, etc.
Run ‘dmidecode’ command using system keyword to view system manufacturer information, as below:
Method-2 : Using inxi Command
inxi is a unique command that helps collect all the required hardware information in Linux systems. This command comes with wide range of options that no other tool can offer. Let us see how this command works below.
Use the inxi command along with -M option to display system manufacture information (manufacturer Name, Chassis Information, Product Information, Bios Information and Serial Number) & there you go:
Method-3 : Using lshw Command
lshw (AKA Hardware Lister) is a small nifty tool that lists out detailed report, housing various hardware components in Linux machine, by reading multiple files under ‘/proc’ directory and DMI table.
Run ‘lshw’ command with system ‘class’ option to check system manufacturer information, as shown below:
Method-4 : Using hwinfo Command
hwinfo, also called hardware information, is another significant tool, used to explore a hardware residing in system and display detailed output containing various components, in a human-readable format.
This command display’s an output in much detailed format, when compared to other tools (lshw, dmidecode, inxi, etc.)
Run the following command (shown below) to locate manufacturer information:
Please refer below steps to collect system hardware information, If in case above tools are not installed on your system:
Bonus Tips-1: Using /sys file system
Kernel’s expose some of DMI information to the ‘/sys’ virtual file system. Hence, use ‘grep’ command (shown below) to collect system manufacture information manually:
As an alternate, we can also print a specific hardware information shown below:
Bonus Tips-2: Using dmesg Command
‘dmesg’ command is used to write the kernel messages (boot-time messages) in Linux before syslogd or klogd start. It obtains data by reading the kernel ring buffer. ‘dmesg’ can be very useful while troubleshooting & also for obtaining information about the hardware on a system.
The purpose of this article was to identify effective strategies to deal with our difficulties while handling routine tasks. We hope the content was to your satisfaction & look forward to contributing more to your success.
Your feedback & support is important for us to improve the service. Please share your thoughts in comments & forward this to needy ones.