Home>Article>Operation and Maintenance> How to determine the number of cores and threads of a CPU in Linux
In Linux, you can use the grep command to check the number of cores and threads of the CPU, and then determine how many cores and threads the CPU has; the syntax for checking the number of CPU cores is "grep 'core id' /proc/cpuinfo | sort -u | wc -l", check the syntax of CPU thread number "grep 'processor' /proc/cpuinfo | sort -u | wc -l".
#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.
Checking the number of cores and threads is to check the number of physical cores and threads of the CPU.
Number of CPUsrefers to the number of physical CPUs.
The number of cpu coresrefers to the physical, that is, how many cores there are on the hardware. For example, dual-core includes 2 relatively independent CPU core unit groups, and quad-core includes 4 relatively independent CPU core unit groups.
The number of cpu threadsis a logical concept. Simply put, it is the number of simulated CPU cores.
For example, a 2-thread CPU can be simulated through a physical CPU core. A physical CPU core corresponds to at least one thread, but through hyper-threading technology, one core can correspond to two threads, which means that it can run two threads at the same time.
The concept of CPU thread number is only useful for Intel CPUs, because it is implemented through Intel Hyper-Threading technology and was first used on Pentium4. Without Hyper-Threading technology, one CPU core corresponds to one thread. For AMD processors, there is no concept of hyper-threading, and the number of threads is the same as the number of cores, so the number of threads is not written in AMD's CPU parameters.
To sum up, this formula is established:
Number of physical CPUs * Number of cores in each physical CPU * Number of hyperthreads = Total number of threads (i.e. The number of logical CPUs)
Linux method to check the number of cores and threads
In Linux, you can use the grep command to check the number of cores of the CPU and the number of threads.
1. Number of CPUs
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
2. Number of cores per CPU
grep 'core id' /proc/cpuinfo | sort -u | wc -l
3. Number of threads
grep 'processor' /proc/cpuinfo | sort -u | wc -l
This server has 4 CPUs, each CPU has 4 cores, and each core has only 1 thread, so the number of threads is 16.
If the number of threads is 32, then the number of threads per CPU core = 32÷4÷4, the result is 2
Extended knowledge: grep command introduction
The origin of the grep command can be traced back to the early days of UNIX. In UNIX systems, the search patterns are called regular expressions. In order to thoroughly search a file, some users have to The search string is prefixed with global (comprehensive). Once matching content is found, the user will print it to the screen. The integration of this series of operations is global regular expressions print. And this is the full name of the grep command.
The grep command can search for a specific character pattern (that is, a regular expression) in one or more files. This pattern can be a single character, string, word, or sentence.
The grep command is used to search for a specific pattern in each file or medium (or on a specific output). When grep is used, each line containing the specified character pattern will be printed (displayed) to the screen. on, but using the grep command does not change the contents of the file.
The basic format of the grep command is as follows:
grep [选项] 模式 文件名
The pattern here is either a character (string) or a regular expression. The commonly used options of this command and their respective meanings are shown in Table 1.
Options | Meaning |
---|---|
List only the number of lines in the file that contain the pattern. | |
Ignore the case of letters in the pattern. | |
List filenames with matching lines. | |
List the line number at the beginning of each line. | |
List lines that do not match the pattern. | |
Search for the expression as if it were a complete single character, ignoring lines that partially match. |
Linux Video Tutorial"
The above is the detailed content of How to determine the number of cores and threads of a CPU in Linux. For more information, please follow other related articles on the PHP Chinese website!