准备环境 以下案例基于 Ubuntu 16.04,同样适用于其他的 Linux 系统。我使用的案例环境如下所示: 机器配置:32 CPU,64GB 内存 在NUMA中储存层次的概念: ?...numactl的使用 Linux提供了一个一个手工调优的命令numactl(默认不安装),在Ubuntu上的安装命令如下: sudo apt install numactl -y 首先你可以通过man...通过numastat命令可以查看numa状态,返回值内容: numa_hit:是打算在该节点上分配内存,最后从这个节点分配的次数; numa_miss:是打算在该节点分配内存,最后却从其他节点分配的次数...node0 CPU(s): 0-7 NUMA node1 CPU(s): 8-15 NUMA node2 CPU(s): 16-23 NUMA node3 CPU(s):...24-31 预告 下一节,我们将聊聊如何通过提升 CPU 绑核来优化程序的性能。
文章目录 一、NUMA 非一致内存访问结构 二、NUMA 架构优势分析 二、SMP、NUMA、MPP 架构 一、NUMA 非一致内存访问结构 ---- 非一致内存访问结构 , 英文名称 Non Uniform...Memory Access , 简称 NUMA ; " 非一致内存访问结 " 的 系统 , 有 多个 CPU 处理器 , 每个 处理器 都有 自己的 独立的本地内存 , 每个 CPU 处理器只支持 自己的本地内存快速访问...各个 CPU 处理器之间通过 " 总线 " 连接 ; 处理器通过 " 总线 " 可以 访问 其它处理器 的 " 内存 " , 但是 处理器 访问 自己的内存 要比 访问 其它处理器的内存 速度要快 ; NUMA...非一致内存访问结构 , 可以 支持 CPU 扩展 , 可以扩展上百 CPU 处理器 ; 二、NUMA 架构优势分析 ---- NUMA 非一致内存访问结构 ( Non Uniform Memory..., 这样为了 保证事物的执行性能 , 需要 减少 CPU 处理器之间的数据交互 , NUMA 架构 只 适合 OLTP ( On-Line Transaction Processing 联机事务处理过程
For Linux, the NUMA platforms of interest are primarily what is known as Cache Coherent NUMA or ccNUMA...This leads to the Linux software view of a NUMA system: Linux divides the system’s hardware resources...For NUMA emulation, linux will carve up the existing nodes–or the system memory for non-NUMA platforms–into...The Linux scheduler is aware of the NUMA topology of the platform–embodied in the “scheduling domains...Further, one can modify the kernel’s default local allocation behavior using Linux NUMA memory policy
Windows一向都没有在NUMA架构上有多少表现机会,AMD的多路系统大多也会用在UNIX/Linux上。...Windows Server 2003 在线程调度程序和内存管理器中引入了 NUMA 优化,而 Windows Server 2008 在 I/O 管理器中添加了 NUMA 优化同时扩展了内存管理器的...NUMA 优化。...SQL Server 2005开始支持NUMA,可参考SQL Server 2008的NUMA支持,NUMA架构对数据库性能的影响可以参考DBA notes同学写的NUMA 架构与数据库性能。...参考资料: Linux 的 NUMA 技术 It's NUMA
原文地址:https://nanxiao.me/uma-vs-numa/ 流行的并行体系结构计算机分为以下两种模型: Shared Memory Architecture: ?...NUMA(Non-Uniform Memory Access): ? ? 所有处理器都一样,但是每个处理器拥有自己的本地内存。
有些情况下需要关闭Linux 服务器的 透明大页和 NUMA,比如安装 Oracle 数据库!...下面介绍如何永久关闭 透明大页 和 NUMA 的命令: Linux 6: 关闭透明大页: cat >>/etc/rc.d/rc.local <<EOF if test -f /sys/kernel/mm...transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi EOF 关闭 numa...: sed -i 's/quiet/quiet numa=off/' /etc/default/grub grub2-mkconfig -o /boot/grub2/grub.cfg Linux 7/8...: 关闭 透明大页 和 NUMA: sed -i 's/quiet/quiet transparent_hugepage=never numa=off/' /etc/default/grub grub2
------------------------------------- **************************************** Logical Processor to NUMA...Node Map: NUMA Node 0: **************************************** ------------------------------------...---- NUMA Node 1: ---------------------------------------- **************************************** Logical
5.1 NUMA Hardware Figure 2.3是最简单的NUMA形式,处理器可以有自己的本地内存,访问本地内存和其他处理器的本地内存的开销区别不大,即NUMA factor比较低。 ?...后面是已知的几种NUMA的硬件实现,这里就不写了。 5.2 OS Support for NUMA 操作系统在分配内存的时候必须将NUMA考虑进去。...理想情况下,操作系统会将DSO在每个处理器的本地物理RAM里做mirror,这是一种优化策略,不是一个要求,通常也很难实现。 操作系统不应该将一个进程或线程迁移到另一个处理器上。...所以,Linux允许每个进程自己设定内存分配规则。...任何SMP Opteron机器都是一个NUMA机器,我们来看看NUMA信息/sys/devices/system/node。每个NUMA节点都有对应的子目录,子目录里有一些文件。
TopologyManager TopologyManager 在1.18版本中处于 beta 状态,该功能支持 CPU 和外围设备(例如 SR-IOV VF 和 GPU)的 NUMA 对齐,使工作负载能够在针对低延迟优化的环境中运行...NUMA 系统上的所有内存都分为一组NUMA 节点,每个节点代表一组 CPU 或设备的本地内存。 如果单个 CPU 的本地内存与该 NUMA 节点相关联,则我们将其称为 NUMA 节点的一部分。...例如,在图 1 中,CPU 0-3 被称为 NUMA node 0 的一部分,而 CPU 4-7 是 NUMA node 1 的一部分。...单个 NUMA 节点上可能有多个 Socket,或者单个 Socket 的单个 CPU 可能连接到不同的 NUMA 节点。...与 single-numa-node 策略不同,如果不可能在单个 NUMA 节点上满足分配请求,则某些分配可能来自多个 NUMA 节点。
一、NUMA 简介 NUMA(Non-Uniform Memory Access,非一致性内存访问) NUMA 服务器的基本特征是 Linux 将系统的硬件资源划分为多个节点(Node),每个节点上有单独的...OS 内核层,在 Linux Kernel 启动参数中加上 numa=off 后重启服务器; For RHEL 6: 编辑 /boot/grub/grub.conf 文件的 kernel 行(添加 numa...当然 innodb_numa_interleave 参数生效,MySQL 必须是在启用 NUMA 的 Linux 系统上编译安装。...从 MySQL 5.7.17 开始,CMake 编译软件新增了 WITH_NUMA 参数,可以在支持 NUMA 的 Linux 系统上编译 MySQL。...不是,numactl 是 Linux 提供的一个对 NUMA 进行手工调优的命令(默认不安装),可以用 numactl 命令查看系统的 NUMA 状态和对 NUMA 进行控制。
一、最小化原则 (1)安装最小化 (2)开机启动服务最小化 (3)操作最小化 (4)权限最小化 (5)配置参数合理,不要最大化 二、端口优化 远程登录的端口默认是22号端口,这是大家都知道的。...所以为了安全着想,我们要修改服务器远程连接端口,这样黑客就不好破解你的linux服务器。同时,默认登录的用户名为root,我们可以修改配置,使远程不能使用root登录。... sudo+命令 普通用户使用root授予普通用户的特定权限 普通用户模式下 sudo-l查看你拥有什么权限 visudo 修改sudo权限(本质是修改/etc/sudoers) 四、内核的优化...root@cai ~]# cat /dev/null 锁定关键文件系统: [root@cai ~]# chattr +i /etc/passwd /etc/gshadow /etc/inittab 七、linux...clientmqene/目录垃圾文件,防止inodes节点被沾满(centos6.5有默认清理不需要设置) 8)精简开机自启动服务(crond,ssh,network,syslog) 9)以上有 八linux
NUMA采用分组的形式,限制一个NUMA节点里面的CPU数量和内存大小,并使用缓存一致性内部连接总线将各个NUMA节点连接起来,如图2所示。...Hyper-V为虚机提供虚拟NUMA节点,虚拟NUMA的拓扑结构及原理与物理机的NUMA拓扑及结构一致,虚拟CPU和虚机内存组合成虚拟NUMA节点,每个虚机的虚拟NUMA节点都映射到相关的物理CPU上,...每颗CPU和它临近的内存组成一个NUMA拓扑节点,因此物理机一共有两个NUMA节点,每个NUMA节点包含20个逻辑核和128GB内存,如果虚机启用NUMA映射,那么这个虚机的NUMA节点拓扑里包含最大的虚拟...图4 虚拟NUMA也支持跨物理NUMA,如果单个虚拟NUMA超过了单个物理NUMA节点的CPU数量,可能会出现虚机NUMA拓扑和物理机NUMA拓扑出现偏离的情况,导致CPU访问远程内存的情况发生,如图5...同理,如果虚机的NUMA节点的CPU超过了物理机NUMA节点的CPU,这些CPU也将访问其他NUMA节点的远程内存。
对于Linux系统,感兴趣的是NUMA平台所谓的Cache Coherent NUMA或ccNUMA系统。...因此,Linux系统将NUMA的硬件资源划分为多个称为node的软件抽象。Linux将node映射到硬件平台的物理socket上,为这个体系架构抽象出一些细节。...对于NUMA仿真,Linux将把现有的node(或者非NUMA平台的系统内存)分割成多个node。每个模拟node将管理底层socket的一小部分物理内存。...随着新版本内核对Linux NUMA支持的改进,如Red Hat Enterprise Linux 5、6和7,节点交错(node interleaving)式不具优势,特别是在更大的系统配置上。...参考内容: 1.https://www.kernel.org/doc/html/latest/vm/numa.html 2.Red Hat Linux NUMA Support for HP ProLiant
NUMA(Non-Uniform Memory Access) 由于 SMP 在扩展能力上的限制,人们开始探究如何进行有效地扩展从而构建大型系统的技术, NUMA 就是这种努力下的结果之一。...图 2.NUMA 服务器 CPU 模块结构NUMA 服务器的基本特征是具有多个 CPU 模块,每个 CPU 模块由多个 CPU( 如 4 个 ) 组成,并且具有独立的本地内存、 I/O 槽口等。...4.3 NUMA、MPP、SMP之间性能的区别NUMA的节点互联机制是在同一个物理服务器内部实现的,当某个CPU需要进行远地内存访问时,它必须等待,这也是NUMA服务器无法实现CPU增加时性能线性扩展。...4.4 NUMA、MPP、SMP之间扩展的区别NUMA理论上可以无限扩展,目前技术比较成熟的能够支持上百个CPU进行扩展。如HP的SUPERDOME。...NUMA架构的优势:NUMA架构来看,它可以在一个物理服务器内集成许多CPU,使系统具有较高的事务处理能力,由于远地内存访问时延远长于本地内存访问,因此需要尽量减少不同CPU模块之间的数据交互。
,NUMA就是这种努力下的结果之一 利用NUMA技术,可以把几十个CPU(甚至上百个CPU)组合在一个服务器内. ?...利用NUMA技术,可以较好地解决原来SMP系统的扩展问题,在一个物理服务器内可以支持上百个CPU。比较典型的NUMA服务器的例子包括HP的Superdome、SUN15K、IBMp690等。...2 三种体系架构之间的差异 2.1 NUMA、MPP、SMP之间性能的区别 NUMA的节点互联机制是在同一个物理服务器内部实现的,当某个CPU需要进行远地内存访问时,它必须等待,这也是NUMA服务器无法实现...2.2 NUMA、MPP、SMP之间扩展的区别 NUMA理论上可以无限扩展,目前技术比较成熟的能够支持上百个CPU进行扩展。如HP的SUPERDOME。...NUMA 的主要优点是伸缩性。NUMA 体系结构在设计上已超越了 SMP 体系结构在伸缩性上的限制。通过 SMP,所有的内存访问都传递到相同的共享内存总线。
文章目录 影响Linux性能的因素 CPU 内存 磁盘I/O性能 网络宽带 操作系统相关资源 系统安装优化 内核参数优化 文件系统优化 应用程序软件资源 系统性能分析工具 vmstat命令 iostat...---- 操作系统相关资源 系统安装优化 系统优化可以从安装操作系统开始。当安装Linux系统时,磁盘的划分、交换分区内存的分配都直接影响以后系统的运行性能....内核参数优化 系统安装完成后,优化工作并没有结束。接下来。还可以对系统内核参数进行优化。不过,内核参数的优化要和系统中部署的应用结合起来整体考虑。...等网络内核参数 ---- 文件系统优化 在Linux下可选的文件系统有ext2、ext3、ReiserFS、ext4、XFS。...所以,对应用程序的优化是性能优化过程的重中之重。 ---- 系统性能分析工具 如何从系统上发现是某个方面或某几个方面出现问题了呢?这就需要使用Linux系统提供的几个常用性能分析工具。
hard noproc 65535 soft nofile 65535 hard nofile 65535 **生产环境内核参数调整:/etc/sysct.conf 解释 LINUX...简单抗D LINUX性能评估 vmstat 2 10 sar -u 2 10 CPU性能 free -m 性能指标 iostat -d 1 10 磁盘IO性能 sar -d 1 10
然后定位到具体代码位置进行优化即可。 僵尸进程 上述优化后iowait显著下降,但是僵尸进程数量仍旧在增加。...如果是软中断导致用/proc/softirqs CPU优化 应用程序优化 编译器优化: 编译阶段开启优化选项, 如gcc -O2 算法优化 异步处理: 避免程序因为等待某个资源而一直阻塞,提升程序的并发处理能力...CPU独占: CPU亲和性机制来分配进程 优先级调整:使用nice适当降低非核心应用的优先级 为进程设置资源显示: cgroups设置使用上限,防止由某个应用自身问题耗尽系统资源 NUMA优化: CPU...与 SWAP 很多情况下系统剩余内存较多,但SWAP依旧升高,这是由于处理器的NUMA架构。...在NUMA架构下多个处理器划分到不同的Node,每个Node都拥有自己的本地内存空间。
概述 在Linux 学习笔记一大体介绍了一些简单的Linux知识和一些简单的优化。...下面我们来学习一下Linux和Linux一些安全知识(Linux是基于内核为2.6.32-642 CentOS x86_64操作系统)。...内核优化 针对不同的服务和应用来优化Linux内核,比如针对Apache和Nginx等来设置优化Linux内核,如果针对Oracle设置相应的设置Linux内核优化。...如果没有特殊的要求可以不用设置自己的Linux内核优化。我们下边设置的内核参数主要是适用于Nginx,Squid等web服务。...在优化之前,我们通过命令查看当前连接统计数: [brian@Master ~]$ netstat -n | awk '/^tcp/ {++S[$NF]} END{for(a in S) print a
1、新建用户 $ useradd -m WHO #新建用户,并在/home下创建相应目录 $ passwd WHO #设置passwd 分组、权限等可自行查找 ...
领取专属 10元无门槛券
手把手带您无忧上云