觋祉对《性能之巅》的笔记(34)
-
第127页
dtrace与systemtap的功能比较,这个是systemtap的问题体现,
表述复杂,展示中负值无文档说明。
来个systemtap有优势的
包含结构控制语句,if 和循环,可以直接访问统计数据。
此书的大赞👍之处,详细对比不同工具的试用优秀和不足,专家风范好棒
-
第197页 CPU linux 平均负载
之前一直用平均负值衡量CPU的等待程度,现在看来,在linux这样的记录下是不能单独这样评论的,应该进一步用vmstat衡量io等待被排除后,参考mpstat评论每个cpu的负载和平均负载等待问题。
-
第205页 CPU time 和ptime
这是个例子太不错了,非常清楚的说明完全缓存的等待时间,只是类比其他测试这个可以直接用吗,还是考虑一下其他环境问题?再想想。
ps:这样做笔记太方便了,只是二次检索应该,再补个自动手写识别就好了
-
第189页 CPU 负载特征归纳
问题
1.系统调用频率指标还是不明白,记录一下
2.后两项在高级归纳清单中有,但没细分析,记一下
这里和下文中的高级清单应该可以混合出一个doing map 下一步做一下,补上了做分析指导用,并尝试记录进一步问题
-
第205页 time 测量命令的命令
实验
time netstat -ua
time pidstat -p ALL 1
[popexizhi:zbash 的打印与bash的不太一样:)]
书上的例子是time cksum *** 运行两次
real 与 user和sys 加和不一致,来说明首次运行花在等待I/O的问题,在第二次测试就没有了。
上面自己的实验,突然发现time是个二级测量工具,可以用来测量测量工具的消耗问题。
ptime 实验
-
第244页 内存
linux 用伙伴分配器(找相邻的空闲内存页以被同时分配)
solaris 为不同内存位置,页大小和页染色准备多个空闲链表。
【popexizhi: 页染色 是 虚拟和物理页地址的映射,利用散列,轮询调度等。
参考:http://docs.oracle.com/cd/E19253-01/819-7063/auto33/index.html
页面染色 (Page coloring)-将使用各种虚拟地址位确定从中选择页的容器。此算法为 Solaris 8 发行版中的缺省算法。需要将 consistent_coloring 设置为零才能使用此算法。对于此算法,不存在任何按进程历史记录。
】
-
第234页 内存匿名换页
-
第235页 按需换页
-
第242页 内存释放
交换倾向
- 页缓存
- 文件系统缓存
- 交换
- kswapd【页面换出守卫进程】执行的换页
- 工作方式: 找出最近不使用的页加入到空闲链表,其中包括应用程序内存。
- kswapd【页面换出守卫进程】执行的换页
- 交换倾向
- 参考:http://www.myjishu.com/?p=80
kswapd0进程的作用:它是虚拟内存管理中,负责换页的,
操作系统每过一定时间就会唤醒kswapd ,看看内存是否紧张,如果不紧张,则睡眠,
在 kswapd 中,有2 个阀值,pages_hige 和 pages_low,当空闲内存页的数量低于 pages_low的时候,kswapd进程就会扫描内存并且每次释放出32 个free pages,直到 free page 的数量到达pages_high。
设置:内存使用到多少开始使用swap? vm.swappiness 这个内核参数控制 /proc/sys/vm/swappiness
- 默认: 60 [linux 4.2.0-42-generic #49~14.04.1-Ubuntu ] 该参数从0到100,当该参数=0,表示只要有可能就尽力避免交换进程移出物理内存;该参数=100,这告诉内核疯狂的将数据移出物理内存移到swap缓存中。 The defaultvalue I’ve seen on both enterprise level Red Hat and SLES servers is 60. To find out what the default value is on aparticular server, run: sysctl vm.swappiness The value is also located in/proc/sys/vm/swappiness. PS:设置vm.swappiness=0后并不代表禁用swap分区,只是告诉内核,能少用到swap分区就尽量少用到,设置vm.swappiness=100的话,则表示尽量使用swap分区,默认的值是60 调整内存参数,当内存使用率不足10%(开始是默认值60)时在使用swap,尽量避免使用swap,减少唤醒软中断进程,从而降低ksoftirqd进程对cpu的占用。
- 参考:http://www.myjishu.com/?p=80
kswapd0进程的作用:它是虚拟内存管理中,负责换页的,
操作系统每过一定时间就会唤醒kswapd ,看看内存是否紧张,如果不紧张,则睡眠,
在 kswapd 中,有2 个阀值,pages_hige 和 pages_low,当空闲内存页的数量低于 pages_low的时候,kswapd进程就会扫描内存并且每次释放出32 个free pages,直到 free page 的数量到达pages_high。
设置:内存使用到多少开始使用swap? vm.swappiness 这个内核参数控制 /proc/sys/vm/swappiness
- 页缓存
-
第246页 solaris的双指针扫描器
这个对比kswapd的工作流程,才感觉这个模型设计太赞了,有时感觉solaris的废弃真实可惜:). 这个思路应该是导数吧,二阶频繁才是问题。:)
PS:原来SmartOS是solaris的涅磐,不错,有新方向了。why 闭源收费是软件发行商的最赚钱之路,但真正的多源和多样却是开源与被收购呢?!我多想了,stop:)
觋祉的其他笔记 · · · · · · ( 全部193条 )
- 玄隐遗密
- 3
- 推拿按摩的解剖学基础(第4版)
- 2
- 人间是剧场
- 1
- 墨子
- 1
- 日日是好日:茶道带来的十五种幸福
- 2
- 中药亲试记
- 57
- 重廣補校《黃帝內經素問》
- 3
- 小学生如何写好作文/梁晓声的写作课
- 1
- BPF之巅
- 1
- 凤囚凰(全3册)
- 2
- 渊海子平
- 2
- 软件测试
- 1
- 魔女宅急便4
- 1
- Vim实用技巧
- 2
- 认知天性
- 2
- 四圣心源
- 1
- 写给孩子的哲学启蒙书(共6册)
- 1
- 加密与解密(第二版)
- 10
- 屡试屡效方-张锡纯医学从书之一-《医学衷中参西录》前三期合编
- 1
- 中医论说集-张锡纯医学全书之三-《医学衷中参西录》第五期
- 1
- 古琴实用教程
- 1
- 五行大义
- 18
- 如何阅读一本书
- 1
- 濒湖脉学
- 1
- Wireshark网络分析就这么简单
- 1
- 《类经图翼 附:类经附翼》
- 1
- 四化滴天髓
- 7
- 星曜鐵關刀
- 1
- Arduino技术内幕
- 2
- 辅行诀五藏用药法要传承集
- 5
- 养性延命录 摄生消息论
- 1
- 刻意练习
- 1
- 机器学习实战
- 2
- 读素问钞
- 1
- 单元测试之道Java版
- 14
- Dive Into Python
- 1
- 论自由
- 1
- 心理和脑与生活
- 1