这些是商家不告诉你的,流行多核处理器的真正原因
nanshan 2024-10-19 06:36 9 浏览 0 评论
文/M叔
图侵删
我敢跟你打个赌,你问身边的熟悉的人:"买手机或者电脑,处理器是单核好还是双核好?"
十个人起码有九个都会回答"肯定双核啊",理由通常是"人多力量大之类的"。
如果按照这逻辑8核一定比4核的快,16核一定比8核快,以此类推,核是越多越好。
可是,我得告诉你情况不是这样的。
CPU发展的困境
我们买电脑时,常常看到上面图片里的参数,如果只能选一项的话,其中CPU主频这栏是比较直观的反应CPU快慢的参数。(虽然这样理解不够全面,但是好理解)
CPU的主频,即CPU内核工作的时钟频率,一般以GHz(1GHz=1000MHz)为单位。也可以理解成CPU内数字脉冲信号振荡的速度,比如,1GHz指数字脉冲信号在每秒钟振荡一亿次。
要知道,三十多年前,英特尔在1983年能做出来的最好的CPU主频才20Mhz,几十年时间里CPU技术在快速发展,2000年英特尔就能做出2000Mhz的CPU了,十七年的时间就主频率上增加了100倍!
你或许听过摩尔定律,就是说"所有的芯片每18个月之后,它的运算速度要增加一倍,这个定律就是英特尔的创始人提出来的。"
CPU的发展一直遵循摩尔定律,但是摩尔定律到了近几年渐渐不灵了。在2017年,英特尔单核CPU最高主频速度只达到4000Mhz,十七年的时间频率上比2000年只增加了1倍。尤其是最近3年,频率上可以说几乎没怎么增加。
CPU的发展好像遇到了技术瓶颈,那么是怎么的技术难题呢?
CPU的技术难题之一发热
只从发展时间和主频值看,大家都能明显感觉英特尔的CPU技术已经发展得很快了。但是应用开发商们,一旦看到CPU的性能有冗余,一定会在冗余的算力基础上开发更多功能的软件,以此来满足消费者多样性的需求。这样就倒逼CPU的生产企业,不断开发出更快更好的处理器芯片。
于是,芯片设计企业想方设法的把频率提升,遗憾的是,随着主频率的提升,CPU的发热也按正比例提升,主频提升一倍,发热也提升一倍,而且提升频率的过程中CPU出现工作不稳定的情况,处理的程序要么出现乱码,要么死机。
很多芯片工程师提出提升电压解决CPU不稳定的问题,但是电压提升后对CPU的发热,简直是火上浇油。CUP发热比之前还高,将电压增加两倍,发热量是之前的4倍。
让芯片企业十分为难的是,现在为了满足客户的需求,把速度提升了一倍,为了保证稳定,把电压提升了1倍,叠加后总的结果就是,发热是从前的8倍。
一倍速度的提升,换来8倍发热,本来之前的CPU发热就是难题,光加风扇肯定是不行的。
况且按照这个情况,CPU速度几轮提升后,发热的量简直不敢想象,可能一开机CPU就烧坏了。
硅基芯片的极限
工程师根据失败经验和理论明白了,应付发热暴增的强效方法是缩小芯片尺寸。
要说明白这个原理,就要提到MOSFET的结构,不过这个太专业了,涉及很多陌生概念,今天我们就简单理解一下:
我们把半导体的开关管想象成一道闸门,那么闸门越大,每次打开关上耗费的能量就越多,这些能量最终都会变成热能。如果闸门做得越小,每次开关耗费的能量就少多了。
以前CPU 的核心大概就是平面1.5平方厘米的硅片制作而成,一张12寸直径的硅片圆盘大约值2.8万美元,缩小尺寸意味着一片硅片圆盘上可以切出更多的CPU核心。
所以,缩小CPU的尺寸,不光能解决发热问题,还能大幅度降低了成本,又提升了CPU的频率,简直是一举三得。
但是,到2007年开始,缩小CPU尺寸这一招也接近极限了。
我们现在的手机上的处理器上,大致有100亿个晶体管,这些晶体管是CPU算力的基础。刚刚我们说了,CPU的核心是个平面为1平方厘米左右的硅片,就这么大个东西上要做100亿个晶体管,你可以想象每个晶体有多小了。如果晶体管再小下去,很可能就会出现"量子效应"——也就是说,芯片会变得不稳定、不可靠。
越来越多的核心的真正原因
基于上面的原因,CPU的企业们想到的办法就是多核心来增加算力。
为了多核处理器能够正常工作,程序员在设计计算机语言和应用程序时,是尽量把单一任务拆分成多线程的任务,以此来平衡处理器之间的算力。
举个例子,我们要给一张照片做一键美颜,一个CPU处理当然没问题,16个也行,只要把这个任务分成16份就可以了。
不过多核心处理器方案也有它的弊端:
1.有相当多任务压根就没法完成多任务,只能交给一个核心完成。
2.多核心有算力浪费,假如单个4GHz的核心能提供1个单位的算力,4个3GHz的核心性能平均是2个单位的算力,相当于单个核心8GHz的水平了。
3. 从单核增加到双核是性能提升最明显的,再增加到四核,八核,甚至二十核,带来的提升就越来越不明显,这不光是因为指令中确实有相当多的压根没法转化为多线程。还因为从单一任务分成多线程任务,再分配到每个处理器,最后再整合结果输出,这一系列多出的步骤本身就会浪费算力。
当知道这些后回头看数码厂商,其实也挺难的,明明是整个行业遇到了技术难题,被迫用多核,又不得不营销多核的出色计算力。
结语
好了,我们再回头看看文章开头的问题:"买手机或者电脑,处理器是单核好还是双核好?"
多核处理器并不能发挥1+1大于2的算力,多核也不是越多越好,它有它的极限。而且假如处理器行业,从根本上解决了发热问题,那么其实单核比双核要好。
比如说,我以前文章介绍过,石墨烯材料中的"魔角"——当两层石墨烯之间有一个特别小的夹角的时候(大概1.1°),两层石墨烯的薄膜之间会交替出现超导和绝缘的区域。这种材料如果开发出来后,由于它超导的特性,基本上就不会有发热问题。
我们之所以会脱口而出,认为多核更好,其实商家营销的结果。当然并不是商家更聪明,只是他们知道的更多。不过有了这些CPU的小知识,以后再有商家给你吹,他家的产品是16核的,多么快,性价比多么高,你会更理智的看待了。
相关推荐
- 超详细!Linux文件和目录的10项属性
-
公众号:老油条IT记文件和目录10项属性目录1:索引节点:inode2:文件类型3:链接数4:用户5:组6:文件大小7.8.9:时间戳10:文件名1.Linux文件#概述#1.linux里一切皆为文件...
- 如何恢复 Linux 系统下被删除的文件 ?
-
丢失数据是任何用户都可能经历的最令人不安和痛苦的经历之一。一旦珍贵数据被删除或丢失,就再也找不不回来通常会引发焦虑,让用户感到无助。值得庆幸的是,有几个工具可以用来恢复Linux机器上被删除的文件...
- Linux文件系统操作常用命令
-
在Linux系统中,有一些常用的文件系统操作命令,以下是这些命令的介绍和作用:#切换目录,其中./代表当前目录,../代表上一级目录cd#查看当前目录里的文件和文件夹ls#...
- Linux系统下使用lsof工具恢复rm命令删除的文件
-
rm(Remove)和lsof(ListOpenFiles)是Linux命令行工具,直接操作文件系统。rm用于删除文件和目录;lsof用于查看进程打开的文件、网络连接、设备等信息。rm删除的文...
- Linux文件管理知识:文本处理
-
Linux文件管理知识:文本处理上篇文章详细介绍了Linux系统中查找文件的工具或者命令程序的相关操作内容介绍。那么,今天呢,这篇文章围绕Linux系统中文本处理来阐述。众所周知,所有Linux操作系...
- Linux基础运维篇:Linux磁盘与文件系统管理(第012课)
-
一、磁盘基础认知1.磁盘是什么在Linux系统里,磁盘就像是一个巨大的仓库,专门用来存放各种数据。电脑里的文档、图片、程序等,都储存在磁盘上。磁盘有不同的类型,常见的有机械硬盘(HDD)和固态硬...
- Linux系统中其他值得关注的病毒/恶意软件示例
-
Linux系统中其他值得关注的病毒/恶意软件示例,结合其传播方式、危害特征及清除方法进行整理。一、经典病毒家族1.Slapper特征:利用Apache的SSL漏洞传播的蠕虫病毒,可创建僵尸网络供攻击者...
- Linux磁盘爆满紧急救援指南:5步清理释放50GB+小白也能轻松搞定
-
“服务器卡死?网站崩溃?当Linux系统弹出‘Nospaceleft’的红色警报,别慌!本文手把手教你从‘删库到跑路’进阶为‘磁盘清理大师’,5个关键步骤+30条救命命令,快速释放磁盘空间,拯救你...
- Linux常用文件操作命令
-
ls命令在Linux维护工作中,经常使用ls这个命令,这是最基本的命令,来写几条常用的ls命令。先来查看一下使用的ls版本#ls--versionls(GNUcoreutils)8.4...
- linux怎么编辑文件内容
-
在Linux中,你可以使用多种方法来编辑文件内容。以下是几种常用的方法:使用文本编辑器:你可以使用命令行下的文本编辑器,如vi、vim或nano来编辑文件。例如,使用vim编辑一个名为example....
- linux学习笔记——常用命令-文件处理命令
-
ls目录处理命令:ls全名:list命令路径:/bin/ls执行权限:所有用户ls–ala--alll–long-i查看i节点ls–i查看i节点命令名称:mkdir命令英文原意:m...
- Win10新版19603推送:一键清理磁盘空间、首次集成Linux文件管理器
-
继上周四的Build19592后,微软今晨面向快速通道的Insider会员推送Windows10新预览版,操作系统版本号Build19603。除了一些常规修复,本次更新还带了不少新功能,一起来了...
- 很少有人知道可以这样删除文件
-
有时候我们在格式化硬盘分区或者删除一些文件的时候,会出现无法操作的情况,例如下面这种这个文件权限问题,系统为了保护一些文件而采取的安全措施,如果你能确定文件是可能删除的,那你只要赋予它管理员权限,...
- linux中磁盘满了?一招教你快速清理
-
创作背景:当天部署服务时,发现无法部署,后来经过日志排查后发现服务器磁盘满了,查询资料后进行了清理。话不多说,直接上解决方法。操作一:1.查看磁盘大小:df-h2.直接在最上层进行排序:du-a...
- Linux下乱码的文件名修改或删除
-
查看文件名#lstouch1?.txt#ll-itotal1469445217956913-rw-r--r--1oracleoinstall0Jan18...
你 发表评论:
欢迎- 一周热门
-
-
爱折腾的特斯拉车主必看!手把手教你TESLAMATE的备份和恢复
-
如何在安装前及安装后修改黑群晖的Mac地址和Sn系列号
-
[常用工具] OpenCV_contrib库在windows下编译使用指南
-
WindowsServer2022|配置NTP服务器的命令
-
WIN11 安装配置 linux 子系统 Ubuntu 图形界面 桌面系统
-
Ubuntu系统Daphne + Nginx + supervisor部署Django项目
-
解决Linux终端中“-bash: nano: command not found”问题
-
Linux 中的文件描述符是什么?(linux 打开文件表 文件描述符)
-
NBA 2K25虚拟内存不足/爆内存/内存占用100% 一文速解
-
K3s禁用Service Load Balancer,解决获取浏览器IP不正确问题
-
- 最近发表
- 标签列表
-
- linux 查询端口号 (58)
- docker映射容器目录到宿主机 (66)
- 杀端口 (60)
- yum更换阿里源 (62)
- internet explorer 增强的安全配置已启用 (65)
- linux自动挂载 (56)
- 禁用selinux (55)
- sysv-rc-conf (69)
- ubuntu防火墙状态查看 (64)
- windows server 2022激活密钥 (56)
- 无法与服务器建立安全连接是什么意思 (74)
- 443/80端口被占用怎么解决 (56)
- ping无法访问目标主机怎么解决 (58)
- fdatasync (59)
- 405 not allowed (56)
- 免备案虚拟主机zxhost (55)
- linux根据pid查看进程 (60)
- dhcp工具 (62)
- mysql 1045 (57)
- 宝塔远程工具 (56)
- ssh服务器拒绝了密码 请再试一次 (56)
- ubuntu卸载docker (56)
- linux查看nginx状态 (63)
- tomcat 乱码 (76)
- 2008r2激活序列号 (65)