
tools
ACodeDog
小码农一只
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CPU指标的含义
这是一张top的截图:里面在第三行描述了CPU相关信息,分别是:Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st这里分别介绍下:指标全拼含义ususer用户态CPU使用时间占总CPU使用时间的百分比sysystem内核态CPU使用时间占总CPU使用时间的百分比ninice改变过优先级的进程占总CPU使用时间的百分比ididle空闲CP原创 2020-09-14 09:48:34 · 916 阅读 · 0 评论 -
上下文切换的定义和影响
一、背景:上下文切换CPU 上下文切换,就是先把前一个任务的 CPU 上下文(也就是 CPU 寄存器和程序计数器)保存起来,然后加载新任务的上下文到这些寄存器和程序计数器,最后再跳转到程序计数器所指的新位置,运行新任务。我的理解是因为CPU在一个时刻只能执行一个任务(进程、线程),现代处理器(CPU)都是可支持多任务的,也就是分时间片的,当一个长任务在CPU上的时间片完成后,他的信息(数据)其实是被放在寄存器和程序计数器(目的是为了记录任务执行到哪条语句(机器码)了)上的。这时我们需要把他的信息保存原创 2020-09-13 14:36:47 · 1130 阅读 · 0 评论 -
平均负载定义和影响
1. 概念平均负载:指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数。用人话说,就是指定时间单位内,有多少个可以执行的线程。我们举个例子:假设你的服务器只有一个进程(单线程),这个进程跑满了CPU(CPU使用率100%),那么你服务器的负载就是1。2. 负载的影响负载低:表明该服务器啥都没运行,空闲状态,浪费资源,浪费电。负载高:多个进程争抢资源(IO/CPU),导致服务响应较慢,影响用户体验。3. 负载的查看很简单,top命令即可查看,如图:右上角的loa原创 2020-09-06 00:18:56 · 716 阅读 · 0 评论 -
c++ Asan(address-sanitize)的配置和使用
写在前面:如果你发现你的程序栈写漏了(发现一个值突然发生了你预想不到的变化, 比如int a = 5,然后cout的时候就成了55)。如果你发现你的程序每天占用内存都变大一点。如果你发现你的程序core dump了。如果你发现。。。除了性能问题,都可以先用asan跑一下,说不定能发现什么。缺点:会让程序变得很慢,导致可能有些线程竞争的地方被刚好掩盖掉了。...原创 2019-12-08 22:42:16 · 22675 阅读 · 5 评论