了解一下CPU 第一篇(r4笔记第30天)

CPU可能对于我们来说是熟悉又陌生的,每天的工作基本都离不开CPU,CPU的消耗是系统负载的一个重要指标,每天都会不定时的来看看CPU的使用情况,但是对于它了解甚少。 在查找了一些资料,个人还是比较能够接受<<大规模分布式存储系统:原理解析与架构实战>>中对于CPU的描述。首先来看看书中提供的一张图。 这张图是关于经典的多CPU架构为对称多处理结构(Symmetric Multi-Processing,SMP),即在一个计算机上汇集了一组处理器,它们之间对称工作,无主次或从属关系,共享相同的物理内存及总线

直接拷贝作者的原话: SMP系统由两个CPU组成,每个CPU有两个核心(core),CPU与内存之间通过总线通信。每个核心有各自的L1d Cache(L1数据缓存)及L1i Cache(L1指令缓存),同一个CPU的多个核心共享L2以及L3缓存,另外,某些CPU还可以通过超线程技术(Hyper-Threading Tech-nology)使得一个核心具有同时执行两个线程的能力。 对于这一点可以举一个类似的例子来说明。 在awr报告中,我们总是在报告头部得到一些硬件的信息,比如下面的这一段内容来自于工作中的awr内容。

Host Name

Platform

CPUs

Cores

Sockets

Memory (GB)

xxx

Linux x86 64-bit

80

40

4

346.22

根据上面的信息,socket就是主板上插cpu的槽的数目,这个地方也代表着存在着4个物理CPU。CPUs为80代表逻辑CPU, CPUs=threads*Cores*CPU_NO,所以可以得出在每个core中,都启用了超线程,使得每个core可以同时执行两个线程。 通过linux命令我们也可以得到一些重要信息。 ************************************** CPU Physical NO: 4 CPU Processor NO: 80 CPU Core NO: cpu cores : 10 CPU model name : Intel(R) Xeon(R) CPU E7- 4870 @ 2.40GHz 我们可以推算出,每个core对应着2个线程,即 2*10*4=80 说到SMP,还有一种CPU架构为NUMA,是对SMP的扩展。每一个NUMA节点是一个SMP的结构,都会有独立的本地内存和IO槽口,如下图:

我们可以多说说CPU中的缓存机制,其中一级缓存是非常重要的,每一级缓存都是依次对上一级缓存的补充,当CPU读取数据的时候,如果在一级缓存中不存在,就会在二级缓存,依次类推,每级缓存的容量也是很有梯度的分布。每一级的缓存命中率都在80%以上。 我们在稍后的章节了解CPU的工作原理和性能相关的知识。

原文发布于微信公众号 - 杨建荣的学习笔记(jianrong-notes)

原文发表时间:2015-01-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏EAWorld

一篇文章全面解析大数据批处理框架Spring Batch

如今微服务架构讨论的如火如荼。但在企业架构里除了大量的OLTP交易外,还存在海量的批处理交易。在诸如银行的金融机构中,每天有3-4万笔的批处理作业需要处理。针对...

6056
来自专栏芋道源码1024

【追光者系列】HikariCP 连接池配多大合适(第一弹)?

首先声明一下观点:How big should HikariCP be? Not how big but rather how small!连接池的大小不是设置...

1620
来自专栏菩提树下的杨过

Gradle 10分钟上手指南

java的源码构建工具,大致经历了 ant -> maven -> gradle 这个过程,每一次进步,都是在解决之前的工具所带来的问题,简单来说: 1. an...

20110
来自专栏沃趣科技

ASM 翻译系列第一弹:基础知识 ASM AU,Extents,Mirroring 和 Failgroups

原作者:Bane Radulovic 译者: 魏兴华 审核: 魏兴华 ASM Allocation Units 在ASM磁盘组中,最基本空间分配单位...

3497
来自专栏程序你好

微服务和传统中间件平台

微服务与部署在中间件平台(esb、应用服务器)上的传统服务有何不同?什么是微服务体系结构模式,它解决了什么问题?本文将讨论所有这些重要的主题,并描述如何管理、管...

1032
来自专栏FreeBuf

PwnAdventure3:一款专为黑客而开发易受攻击的MMORPG游戏

Pwn Adventure 3的游戏场景设置在一座美丽的岛屿上,在这个岛上任何情况都有可能发生,例如飞行,无限游戏虚拟币等。

1633
来自专栏风口上的猪的文章

.NET面试题系列[16] - 多线程概念(1)

这篇文章主要是各个百科中的一些摘抄,简述了进程和线程的来源,为什么出现了进程和线程。

1652
来自专栏Android机动车

Android开发者的UI自动化测试上手指南

开发人员测试自己所开发软件的行为就像学生在完成考试后对自己的成绩进行评估,所以可能会出现下面的问题:

1272
来自专栏IT笔记

记一次JavaWeb网站技术架构总结

题记 工作也有几多年了,无论是身边遇到的还是耳间闻到的,多多少少也积攒了自己的一些经验和思考,当然,博主并没有太多接触高大上的分布式架构实践,相对比较零碎,随时...

45011
来自专栏王亚昌的专栏

iostat命令使用

天刚上线了一台server,观察了一下,发现io比较高,想到了iostat命令,观察了一下(每隔一秒打印一次),发现有一个守护进程每隔几秒就写一次IO,再top...

772

扫码关注云+社区