[TimLinux] CPU 常见架构介绍
1. 简介
系统性能依赖硬件架构,CPU架构决定了硬件的布局。常见的CPU架构:SMP, NUMA, MPP.
2. SMP(对称多处理器)
SMP:Symmetric Multiprocessing,所有处理器、总线、内存都是共享的,扩展性很差,多核CPU常常因为总线共享成为了瓶颈。

3. NUMA(非均匀内存访问)
NUMA:Non-Uniform Memory Access,内存跟CPU有直接连接(Local Access),要访问其他CPU连接的内存,需要通过Inter-Connect总线(Remote Access),操作系统内将CPU,内存划分为一个个的node(对应/sys/devices/system/node目录中的node0, node1)来管理Core、内存节点(内存在系统内又映射成多个内存节点)。node间交换资源性能低,针对大数据访问量大应用(比如:MySQL数据库)容易出现性能时好时坏大问题。

4. MPP(大规模并行处理)
MPP:Massive Parallel Processing,像刀片服务器,每一个刀片单元又是一个独立大SMP架构的硬件,刀片间通过高性能的网络设备进行交互。增加刀片节点,相应的管理中心系统也需要进行扩容。
5. Linux内关联命令
lscpu 显示CPU架构相关信息
taskset 设置进程亲近的CPU(系统调用:sched_setaffinity),也可以通过cgroup的cpuset来配置。 关联的rpm包:util-linux
# numactl --hardware
available: 2 nodes (0-1)
node 0 size: 32276 MB
node 0 free: 26856 MB
node 1 size: 32320 MB
node 1 free: 26897 MB
node distances:
node 0 1
0: 10 21
1: 21 10 关联的rpm包:numactl
6. 相关优化
针对各CPU架构,尤其是NUMA架构,一些应用软件遇到过各种坑(比如:MySQL,PostgreSQL),目前多是通过一些操作(启动前的系统操作,核心+内存+进程的关联绑定)来进行优化。
- 比如:https://blog.jcole.us/2012/04/16/a-brief-update-on-numa-and-mysql/
[TimLinux] CPU 常见架构介绍的更多相关文章
- 多核CPU硬件架构介绍
转自:http://book.51cto.com/art/201004/197196.htm SISD.MIMD.SIMD.MISD计算机的体系结构 1. 计算平台介绍 Flynn于1972年提出了计 ...
- ReactiveCocoa常见操作方法介绍/MVVM架构思想
1.ReactiveCocoa常见操作方法介绍. 1.1 ReactiveCocoa操作须知 所有的信号(RACSignal)都可以进行操作处理,因为所有操作方法都定义在RACStream.h中, ...
- Intel CPU平台和架构介绍
点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! 服务器主板上数据传输流依次为CPU .内存.硬盘和网卡, ...
- Kafka设计解析(一)Kafka背景及架构介绍
转载自 技术世界,原文链接 Kafka设计解析(一)- Kafka背景及架构介绍 本文介绍了Kafka的创建背景,设计目标,使用消息系统的优势以及目前流行的消息系统对比.并介绍了Kafka的架构,Pr ...
- Kafka剖析:Kafka背景及架构介绍
<Kafka剖析:Kafka背景及架构介绍> <Kafka设计解析:Kafka High Availability(上)> <Kafka设计解析:Kafka High A ...
- MySQL高级知识- MySQL的架构介绍
[TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...
- 从零开始编写自己的C#框架(5)——三层架构介绍
三层架构对于开发人员来说,已经是司空见惯了,除了大型与超小型项目外,大多都是这种架构来进行开发. 在这里为初学者们简单介绍一下三层架构: (下面内容摘自<趣味理解:三层架构与养猪—<.NE ...
- Apache Shiro 使用手册(一)Shiro架构介绍 - kdboy - ITeye技术网站
转载 原文地址 http://kdboy.iteye.com/blog/1154644 一.什么是Shiro Apache Shiro是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理 ...
- Apache Shiro 使用手册(一)Shiro架构介绍
一.什么是Shiro Apache Shiro是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理等功能: 认证 - 用户身份识别,常被称为用户"登录": 授权 - ...
随机推荐
- tornado的使用-数据库篇
tornado的使用-数据库篇
- java编程思想第四版第八章习题
第一题 package net.mindview.polymorphism; //基类-自行车 class Cycle{ } //子类-单轮车 class Unicycle extends Cycle ...
- mysql提示Packet for query is too large (1142 > 1024)解决方案
注:最近mysql一直提示如下错误 Packet for query is too large (1185 > 1024). You can change this value on the s ...
- pat 1092 To Buy or Not to Buy(20 分)
1092 To Buy or Not to Buy(20 分) Eva would like to make a string of beads with her favorite colors so ...
- nyoj 52-无聊的小明 (模拟, SET)
52-无聊的小明 内存限制:64MB 时间限制:3000ms Special Judge: No accepted:1 submit:3 题目描述: 这天小明十分无聊,没有事做,但不甘于无 ...
- 官方宣布IPV4已然耗尽,IPv6D风口或将到来?
急救箱 IPV4真的用完了吗? IPV4真的用完了吗?其实 小兰 一点也不惊讶 ,毕竟全球人口这么多,多N的几次幂就用完了吧- 43亿个IPv4地址已分配完毕,这意味着没已经有更多的IPv4地址可 ...
- vue 安装指令
vue init webpack 项目名 创建项目cd 项目名 打开项目 npm install vuex --save 安装vuex在一个模块化的打包系统中,您必须显式地通过 Vue.use() 来 ...
- 树莓派SSH篇
开启好树莓派后发现一个问题,怎么才可以输入进树莓派里面呢? 一.你需要和我一样准备一个无线(有线)键盘
- Linux三个比较特殊的权限
Linux还有三个比较特殊的权限,分别是:setuid,setgid,stick bit . -:表示一般文件 d:表示目录文件 l:表示链接文件 b:表示块设备 c:表示字符设备 p:表示管道 s: ...
- 全网最通俗易懂的Kafka入门!
前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 在这篇之前已经写过两篇基础文章了,强烈建议先去阅读: ...