节点、cpu、cpu核、进程、线程,以及运行程序和OpenMP

您所在的位置:网站首页 ss节点是什么意思 节点、cpu、cpu核、进程、线程,以及运行程序和OpenMP

节点、cpu、cpu核、进程、线程,以及运行程序和OpenMP

2023-08-11 10:15| 来源: 网络整理| 查看: 265

使用集群前需要了解节点,CPU,CPU核心,进程、线程、程序的区别,这样可以方便提交任务和知道OPENMP为什么不能跨节点共享内存:

一个CPU有多个核心(物理核心)很好理解,比如我们的手机,都有很多核心。同样我们能接触到的服务器,叫做节点,一个节点也可以有1-多个CPU,1个CPU有多个CPU核心,大多数计算服务器都是2个CPU的。

进程的概念是:进程是程序运行的一个实体的运行过程,是系统进行资源分配和调配的一个独立单位。

线程:线程是进程运行和执行的最小调度单位

进程是操作系统进行资源(包括cpu、内存、磁盘IO等)分配的最小单位。

线程是cpu调度和分配的基本单位。

我们打开的聊天工具微信,浏览器都是一个进程(如上图)。

进程可能有多个子任务,比如聊天工具要接受消息,发送消息,这些子任务就是线程,多个线程如图所示,如果只启用1个CPU核心那就是串行,启动多个CPU核心就是并行。

资源分配给进程,线程共享进程资源。

概括起来是:一个节点可以有多个CPU,一个CPU可以有多个CPU核心,一个CPU核心可以有一个以上的线程。一个核心在某个时间点只能执行一个进程,一个程序可以调用多个进程,一个进程可调用至少一个线程,如果一个进程同时调用的线程数超过CPU核心的线程数,则需要调用其他CPU核心实现并行。一个进程只能在本节点运行,线程是进程派生的并共享进程资源,所以多线程并行是不能跨节点运行,即OPENMP(多线程并行任务)是不能跨节点的。

如何查看CPU信息呢:

[test_pkuhpc@login12 2019test]$  lscpu

Architecture:          x86_64(CPU的构架)

CPU op-mode(s):        32-bit, 64-bit

Byte Order:            Little Endian

CPU(s):                56

On-line CPU(s) list:   0-55

Thread(s) per core:    2(开启超线程,所以是1核2线程)

Core(s) per socket:    14(每个CPU14核心)

Socket(s):             2(2个CPU)

NUMA node(s):          2

Vendor ID:             GenuineIntel

CPU family:            6

Model:                 85

Model name:            Intel(R) Xeon(R) Gold 6132 CPU @ 2.60GHz

Stepping:              4

CPU MHz:               2600.000

BogoMIPS:              5200.00

Virtualization:        VT-x(开启虚拟化,可以按装虚拟机)

L1d cache:             32K

L1i cache:             32K

L2 cache:              1024K

L3 cache:              19712K

NUMA node0 CPU(s):     0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54 (这个十分有用,特别是调用GPU的时候)

NUMA node1 CPU(s):     1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39,41,43,45,47,49,51,53,55 (这个十分有用,特别是调用GPU的时候)

Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb cat_l3 cdp_l3 intel_ppin intel_pt ssbd mba ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts pku ospke spec_ctrl intel_stibp flush_l1d

这个是指令集(不同的CPU有不通指令集如 avx512cd avx512bw avx512vl  sse4_1 sse4_2 x2apic 就是比较新的CPU才有)

如何查看进程和线程信息,请点击: (ps top ptree  cat /proc/${pid}/status) 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3