当前位置: 首页 > news >正文

CPU的基本认识

为大家介绍CPU的基本概念,例如:CPU的型号认识、什么是时钟周期、物理核和逻辑核、缓存、TLB缓存的概念,可以帮助大家对cpu有个概念性的认识,选择电脑的时候可以看懂CPU的参数和理解基本原理。

CPU的基本认识

    • 个人CPU型号介绍
    • 工作频率和时钟周期
    • 物理核和逻辑核
    • L1/L2/L3级缓存
    • TLB缓存

个人CPU型号介绍

在这里插入图片描述

1、第一个是英特尔公司的处理器

2、英特尔公司有多个子品牌,上面代表的酷睿是其中一种,还有例如:凌动、赛扬、奔腾、至强等

3、i7代表CPU的档次,从低端到高端依次有:i3、i5、i7、i9,几个等级的芯片

4、后面的代际编号有可能是一位或者两位,越大代表越新,CPU性能越好。

5、SKU是库存编号,一般也是越大越好

6、K代表产品线后缀,笔记本电脑中,H代表高性能、U代表较低功耗、Y代表极低功耗。台式机中X代表最高性能、K代表高性能、T代表功耗优化。

工作频率和时钟周期

再CPU系统中为了保证所有硬件单元能够协同工作,CPU工程师设计了时钟信号和系统同步。

时钟周期:也叫震荡周期,CPU执行一条指令的基本动作所需要的时间称为一个时钟周期,CPU执行一条指令时间越快,性能越好,时钟周期基本单位是HZ,CPU工作频率就是1秒中有多少个震荡周期,现在的CPU基本是GHZ级别,如下图CPU主频可以到2.6GHZ,也就是一秒26亿的时钟周期,最高睿频代表最高能到3200MHZ,也就是3.125GHZ。

在这里插入图片描述

物理核和逻辑核

物理CPU:主机上真正安装的CPU个数

物理核:一个CPU里面可能会有多个物理核

逻辑核:物理核是真实存在的硬件,逻辑核是物理核虚拟出来的核数,一般一个物理核可以通过超线程技术虚拟出来多个逻辑核,如下图,就是一个CPU有6个物理核,有12个逻辑核

在这里插入图片描述

​ 逻辑核的基本原理就是CPU在处理一个任务的时候需要有等待数据、指令的空闲时间,这个时候就可以做别的工作。超线程技术可以手动关闭,这个超线程技术的开启和关闭差距没有想象的那么大,大约20%~30%左右。可以使用cat /proc/cpuinfo这条指令查看cpu的详细信息。

L1/L2/L3级缓存

​ 最开始的时候CPU和内存的运行速度的差异没有现在这么大,CPU访问数据直接访问内存就可以了,但是随着技术的发展,CPU和内存的速度差距越来越大,所以就出现了一个比内存空间小,但是访问速度可以跟CPU匹配的缓存,现在的缓存一般分为三级,L1、L2、L3,L1最快但是容量最小,L3最慢但是容量最大。

​ L1一般有多个,并且分为两种,缓存数据(cache data)和缓存代码(cache code),因为更新策略不同,一般一个物理核有一个dataL1和codeL1,L2一般也是一个物理核一个,但是L3就是所有核用一个了。

​ 一般CPU直接从L1获取数据,L1从L2获取数据,L2和L3也一样,当前级别缓存向下一级获取数据的时候并不是只获取一个bit或者byte,而是获取cache Line,cacheLine的大小一般是64字节。

TLB缓存

​ 我们写程序的时候,可以对一个变量进行取地址操作,那取出来的这个地址是内存的真正物理地址吗?并不是。而是通过页表映射出来的虚拟地址,如果不了解什么是进程地址空间可以先看看这篇文章,

​ CPU获取程序的数据或者代码的时候,也是通过这虚拟地址访问的,虚拟地址和物理地址是通过页表转换的,CPU访问内存需要拿着虚拟地址让页表映射到物理地址,然后访问数据。

​ 但是这时候有个问题,内存很大的话,用一级页表是不够的,除非把页设置的非常大,但是也不现实,所以需要用到多级页表,就跟看书需要通过目录找到特定的页,多级页表可以理解为多级目录,但是访问多级目录效率非常低下,访问一次内存需要进行多次IO,可以把单个页的size变大,但是所能管理的地址也就非常有限。

​ 所以这时候就可以把页表中的数据进行缓存起来,这时候就有了TLB(Translation Lookaside Buffer),CPU可以直接访问TLB获取映射的信息,访问TLB是非常快的,甚至比L1缓存还快。

http://www.xdnf.cn/news/318259.html

相关文章:

  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】7.2 PostgreSQL与Python数据交互(psycopg2库使用)
  • 解决HomeAssistant 无法安装 samba share问题
  • C++ set和map系列(关联式容器)的介绍及使用
  • 如何有效防御服务器DDoS攻击
  • GoFly企业版框架升级2.6.6版本说明(框架在2025-05-06发布了)
  • 【macOS】iTerm2介绍
  • 21. LangChain金融领域:合同审查与风险预警自动化
  • 直线最小二乘法线性拟合-- points点集合
  • 【JS逆向基础】并发爬虫
  • 01Introduction
  • Flowable7.x学习笔记(二十一)查看我的发起
  • uniapp 搭配 uCharts
  • 禁止idea联网自动更新通过防火墙方式
  • 2025-05-07 学习记录--Python-变量 + 常量 + 命名规则 + 变量的数据类型 + 数据类型
  • boost笔记: Cannot open include file: ‘boost/mpl/aux_/preprocessed/plain/.hpp‘
  • Decode rpc invocation failed: null -> DecodeableRpcInvocation
  • Notion Windows桌面端快捷键详解
  • [ linux-系统 ] 常见指令3
  • Linux 服务器静态 IP 配置初始化指南
  • UniAppx 跳转Android 系统通讯录
  • linux中的find命令——查找文件名
  • SSL/TLS 证书与数字签名:构建互联网信任的详解
  • Review --- Redis
  • 金融企业如何借力运维监控强化合规性建设?
  • 【hot100】bug指南记录1
  • Qt界面设计时窗口中各控件布局及自适应方法
  • [250507] 小米发布首个推理模型 MiMo,70亿参数展现卓越性能
  • 使用 Java 11 的 HttpClient 处理 RESTful Web 服务
  • 【Linux】Linux环境基础开发工具
  • 精益数据分析(46/126):深入剖析用户生成内容(UGC)商业模式