cpu参数

vmstat,iostat,sar命令详解

折月煮酒 提交于 2020-02-27 13:38:46
Procs   r: 等待运行的进程数 b: 处在非中断睡眠状态的进程数 w: 被交换出去的可运行的进程数。此数由 linux 计算得出,但 linux 并不耗尽交换空间   Memory   swpd: 虚拟内存使用情况,单位:KB   free: 空闲的内存,单位KB   buff: 被用来做为缓存的内存数,单位:KB   Swap   si: 从磁盘交换到内存的交换页数量,单位:KB/秒   so: 从内存交换到磁盘的交换页数量,单位:KB/秒   IO   bi: 发送到块设备的块数,单位:块/秒   bo: 从块设备接收到的块数,单位:块/秒   System   in: 每秒的中断数,包括时钟中断   cs: 每秒的环境(上下文)切换次数   CPU   按 CPU 的总使用百分比来显示   us: CPU 使用时间   sy: CPU 系统使用时间   id: 闲置时间   准测   r<5,b≈0,   如果fre<minfree,将会出现连续不断的页面调度,将导致系统性能问题。   对于page列,re,pi,po,cy维持于比较稳定的状态,PI率不超过5,如果有pagin发生,那么关联页面必须先进行pageout在内存相对紧张的环境下pagein会强制对不同的页面进行steal操作。如果系统正在读一个大批的永久页面,你也许可以看到po和pi列会出现不一致的增长

读懂vmstat

穿精又带淫゛_ 提交于 2020-02-27 13:35:40
[root@localhost ~]# vmstat -n 3 (每个3秒刷新一次) procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 1 0 144 186164 105252 2386848 0 0 18 166 83 2 48 21 31 0 2 0 144 189620 105252 2386848 0 0 0 177 1039 1210 34 10 56 0 0 0 144 214324 105252 2386848 0 0 0 10 1071 670 32 5 63 0 0 0 144 202212 105252 2386848 0 0 0 189 1035 558 20 3 77 0 2 0 144 158772 105252 2386848 0 0 0 203 1065 2832 70 14 15 0 vmstat所带参数请用man vmstat查看 Procs r: 等待运行的进程数 b: 处在非中断睡眠状态的进程数 w: 被交换出去的可运行的进程数。此数由 linux 计算得出,但 linux 并不耗尽交换空间 Memory swpd:

vmstat命令详解

孤街醉人 提交于 2020-02-27 13:35:10
[root@localhost ~]# vmstat -n 3 (每个3秒刷新一次) procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 1 0 144 186164 105252 2386848 0 0 18 166 83 2 48 21 31 0 2 0 144 189620 105252 2386848 0 0 0 177 1039 1210 34 10 56 0 0 0 144 214324 105252 2386848 0 0 0 10 1071 670 32 5 63 0 0 0 144 202212 105252 2386848 0 0 0 189 1035 558 20 3 77 0 2 0 144 158772 105252 2386848 0 0 0 203 1065 2832 70 14 15 0 vmstat所带参数请用man vmstat查看 Procs r: 等待运行的进程数 b: 处在非中断睡眠状态的进程数 w: 被交换出去的可运行的进程数。此数由 linux 计算得出,但 linux 并不耗尽交换空间 Memory swpd:

进程占用过高cpu的排查

你说的曾经没有我的故事 提交于 2020-02-27 13:33:28
1. vmstat工具,可以查看系统级别的负载情况,包括进程、内存、IO、CPU、系统调用等等 用法:vmstat [options] [delay [count]] 第一行是自上次reboot之后的平均负载,之后的输出是该delay时间段内的增量值(比如中断数、系统调用数等,但像是内存、cpu负载这些参数等就还是实时值) 输出示例: procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 2 0 8 266056 130176 1352704 0 0 294 35 665 1552 8 4 86 2 0 1 0 8 264356 130216 1354632 0 0 0 184 1958 2605 1 4 93 2 0 0 0 8 264248 130216 1354660 0 0 0 0 781 1364 1 1 99 0 0 参数解释: Procs r: The number of runnable processes (running or waiting for run time). b: The number of processes in

后端开发必须掌握的Linux命令[性能检测篇]

一个人想着一个人 提交于 2020-02-27 11:09:22
性能监测相关命令 mpstat 功能: 显示CPU的状态信息 这些信息存放在/proc/stat文件中。 在多CPUs系统里, 其不但能查看所有CPU的平均状况信息, 而且能够查看特定CPU的信息。 输入语法: mpstat(选项)(参数) 选项 -A : 此选项等效于# mpstat -I ALL -u -P ALL -I {SUM | CPU | ALL} : 报告中断统计信息。 使用SUM关键字,mpstat命令报告每个处理器的中断总数。使用CPU关键字,显示CPU或CPU每秒接收的每个中断的数量。ALL关键字等效于指定上面的所有关键字,因此显示所有中断统计信息。 -P {cpu [,...] | ON | ALL} : 指示要报告统计信息的处理器编号。cpu是处理器号。注意,处理器0是第一个处理器。 ON关键字表示将为每个在线处理器报告统计信息,而ALL关键字指示要为所有处理器报告统计信息。 参数 间隔时间:每次报告的间隔时间(秒); 次数:显示报告的次数。 输出信息: user 在internal时间段里,用户态的CPU时间(%),不包含 nice值为负 进程 (usr/total)*100 nice 在internal时间段里,nice值为负进程的CPU时间(%) (nice/total)*100 system 在internal时间段里,内核态的CPU时间(%)

uboot makefile整体解析

故事扮演 提交于 2020-02-27 09:31:28
uboot的源文件众多,学习庞然大物首先找到脊椎--顶层的makfile,逐一破解。但是,uboot的makefile同样是一个庞然大物,所以也要找到它的主线。倘若过分专注部分细节,很难做到把握全局,实际上也不可能很好理解细节。 介于此,笔者已经写了一篇 uboot makefile整体解析 ,可以先从主体上把握makefile。然后,再读这篇makefile强大功能实现的细节,才能做到循序渐进。 说明:uboot顶层makefile的注释机会全部源码都搬上来了,而注释都是黑体加粗以与源码有强烈的区别。 VERSION = 1 //主版本号 PATCHLEVEL = 1 //次级版本号 SUBLEVEL = 6 EXTRAVERSION = //版本号扩展 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) //这个Uboot的版本为1.1.6 VERSION_FILE = $(obj)include/version_autogenerated.h //生成uboot的版本信息 HOSTARCH := $(shell uname -m | \ sed -e s/i.86/i386/ \ -e s/sun4u/sparc64/ \ -e s/arm.*/arm/ \ -e s/sa110/arm/

HBase基准性能测试报告

蓝咒 提交于 2020-02-27 01:18:19
作者:范欣欣 本次测试主要评估线上HBase的整体性能,量化当前HBase的性能指标,对各种场景下HBase性能表现进行评估,为业务应用提供参考。本篇文章主要介绍此次测试的基本条件,HBase在各种测试场景下的性能指标(主要包括单次请求平均延迟和系统吞吐量)以及对应的资源利用情况,并对各种测试结果进行分析。 测试环境 测试环境包括测试过程中HBase集群的拓扑结构、以及需要用到的硬件和软件资源,硬件资源包括:测试机器配置、网络状态等等,软件资源包括操作系统、HBase相关软件以及测试工具等。 集群拓扑结构 本次测试中,测试环境总共包含4台SA5212H2物理机作为数据存储。生成数据的YCSB程序与数据库并不运行在相同的物理集群。 单台机器主机硬件配置 软件版本信息 测试工具 YCSB全称Yahoo! Cloud Serving Benchmark,是Yahoo公司开发的专门用于NoSQL测试的基准测试工具。github地址:https://github.com/brianfrankcooper/YCSB YCSB支持各种不同的数据分布方式 1. Uniform:等概论随机选择记录 2. Zipfian:随机选择记录,存在热记录 3. Latest:近期写入的记录为热记录 测试场景 YCSB为HBase提供了多种场景下的测试,本次测试中,我们导入10亿条数据,并对如下场景进行测试:

HBase基准性能测试报告

元气小坏坏 提交于 2020-02-27 01:17:31
作者:范欣欣 本次测试主要评估线上HBase的整体性能,量化当前HBase的性能指标,对各种场景下HBase性能表现进行评估,为业务应用提供参考。本篇文章主要介绍此次测试的基本条件,HBase在各种测试场景下的性能指标(主要包括单次请求平均延迟和系统吞吐量)以及对应的资源利用情况,并对各种测试结果进行分析。 测试环境 测试环境包括测试过程中HBase集群的拓扑结构、以及需要用到的硬件和软件资源,硬件资源包括:测试机器配置、网络状态等等,软件资源包括操作系统、HBase相关软件以及测试工具等。 集群拓扑结构 本次测试中,测试环境总共包含4台SA5212H2物理机作为数据存储。生成数据的YCSB程序与数据库并不运行在相同的物理集群。 单台机器主机硬件配置 软件版本信息 测试工具 YCSB全称Yahoo! Cloud Serving Benchmark,是Yahoo公司开发的专门用于NoSQL测试的基准测试工具。github地址:https://github.com/brianfrankcooper/YCSB YCSB支持各种不同的数据分布方式 1. Uniform:等概论随机选择记录 2. Zipfian:随机选择记录,存在热记录 3. Latest:近期写入的记录为热记录 测试场景 YCSB为HBase提供了多种场景下的测试,本次测试中,我们导入10亿条数据,并对如下场景进行测试:

gcc常用参数和环境变量小结

放肆的年华 提交于 2020-02-26 19:25:01
(in alphabet,整理自《C In A Nutshell》1e,Section18.9,加点自己的理解) Command-Line Options 命令行参数 -c Preprocess, compile, and assemble only (i.e., don't link). 预处理(生成.i,用完删除)、编译(生成.s,用完删除),汇编(生成.o),不连接(不生成可执行文件)。Btw,貌似很多地方可以用-pipe直接通过管道,不生成临时文件,加快编译 -C Leave comments in when preprocessing. 预处理时不去除注释(结合其他会留下预处理输出的参数使用,如-E) -D name[= definition] Defines the symbol name. 定义一个标识符(相当于程序里面写#define name[= definition],可以结合#ifndef name实现控制功能) -e name Start program execution at name. (对一个Freestanding的程序,比如自己写的OS)自定义入口函数(常和-ffreestanding -nostartfiles –nostdlib等一起使用) -E Preprocess only; output to stdout, unless used

Java线程同步和并发第1部分

限于喜欢 提交于 2020-02-26 16:45:24
通过优锐课核心java学习笔记中,我们可以看到,码了很多专业的相关知识, 分享给大家参考学习。我们将分两部分介绍Java中的线程同步,以更好地理解Java的内存模型。 介绍 Java线程同步和并发是复杂应用程序各个设计阶段中讨论最多的主题。 线程,同步技术有很多方面,它们可以在应用程序中实现高并发性。 多年来,CPU(多核处理器,寄存器,高速缓存存储器和主内存(RAM))的发展已导致通常是开发人员往往忽略的某些领域-例如线程上下文,上下文切换,变量可见性,JVM内存 型号与CPU内存型号。 在本系列中,我们将讨论Java内存模型的各个方面,包括它如何影响线程上下文,Java中实现并发的同步技术,竞争条件等。在本文中,我们将重点讨论线程,同步的概念 技术以及Java和我们的CPU的内存模型。 概括 在深入研究线程和同步这一主题之前,让我们快速回顾一下一些与线程相关的术语和概念。 1.Lock —锁是线程同步机制。 2. Java中的每个对象都有一个与之关联的固有锁。线程使用对象的监视器进行锁定或解锁。锁可以视为逻辑上是内存中对象标头的一部分的数据。有关监视器无法实现的扩展功能,请参见ReentrantLock。 3.Java中的每个对象都有同步方法,wait()和notify()[也notifyAll()]。任何调用这些方法的线程都使用其监视器获得该对象的锁