【Windows压力测试工具】 - 使用微软官方工具进行压测 cpu、内存

👨‍🎓博主简介

  🏅优快云博客专家
  🏅云计算领域优质创作者
  🏅华为云开发者社区专家博主
  🏅阿里云开发者社区专家博主
💊交流社区:运维交流社区 欢迎大家的加入!
🐋 希望大家多多支持,我们一起进步!😄
🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏 ⭐️ 加关注+💗


一、需求背景

在某些场景下,我们虽然没有使用windows,但根据要求,也需要占用一定的资源;
或者是在开发一些极端场景的需求时,需要自测,这种情况需要模拟极端情况很麻烦,所以需要一些压力测试工具来模拟。

我在微软官方文档中找到专门针对cpu,内存,磁盘做压力测试的工具和方法:
官方文档:Tools To Simulate CPU / Memory / Disk Load

运行平台:

  • 客户端:Windows Vista 及更高版本
  • 服务器:Windows Server 2003 及更高版本
  • Nano Server:2016 及更高版本

二、CPU压力测试工具 - cpustres

CpuStres 是实用工具,可以通过在紧密循环中运行多达 64 个线程来模拟 CPU 活动。
每个线程都可以独立启动、暂停或停止,

2.1 下载 cpustres

cpustres官方下载连接:https://learn.microsoft.com/zh-cn/sysinternals/downloads/cpustres

2.2 cpustres 值说明

列名含义说明
ID运行 ID(内部句柄)可忽略,仅用于区分线程。
Active?线程是否正在运行Yes=运行;空白=暂停。
Activity占空比(跑-停比例)Low≈20 %;可菜单改为 Medium/High/Busy(40 %/60 %/100 %)。
Priority线程优先级Normal
Ideal CPU首选逻辑核编号根据核数分为0-11,仅作调度提示,提示调度器“尽量放这里”;非强制。
Affinity允许运行的核 位掩码111111111111(12 个 1)→ 代表有12核cpu,可以在12核中随便跑

2.3 安装使用 cpustres

  • 解压并打开文件夹选择CPUSTRES64.EXE
  • 双击打开

  • 默认打开后界面里有 4 条线程,其中只有 1 条被激活 (Active?=Yes),可通过如下添加线程

  • 根据自己需求添加多个线程,但是添加之后都是睡眠状态,我们可以激活睡眠状态,激活之后Active? 会出现Yes表示激活了。

  • 激活线程

选择要激活的线程 --> 点击激活 --> 可以看到Active? 出现了Yes,就成功激活了



  • 激活之后可以看一下资源管理器,cpu是否增加了,可以先开一个,然后打开资源管理器,在多开几个,看看cpu会不会上涨

  • 查看任务管理器,进程,cpu排序,就可以看到此程序占用多少%。

  • 最后,根据自己的需求达到多少%,就多开几个线程测试。

如果不想让Activity有空闲,可以选中要更改的线程(Shift+鼠标选中)
点菜单 Thread → Activity → 选则Busy
会立即生效,就可以看到cpu会直接上升,并且不会有空闲,就会一直再循环跑;

三、内存压力测试工具 - testlimit

Testlimit 是一种命令行实用工具,可用于通过模拟内存、句柄、进程、线程和其他系统对象的低资源条件来对电脑和/或应用程序进行压力测试。

3.1 下载 testlimit

testlimit官方下载连接:https://learn.microsoft.com/zh-cn/sysinternals/downloads/testlimit

3.2 testlimit 参数

目前用到的就只有-d -c,其他的可以略过不用看,如果有想深入了解的可以看看;
Testlimit64.exe -d -c 要跑多少M

参数功能简述默认值示例
-a MB分配 AWE(地址窗口扩展)内存1 MB-a 1024 → 分配 1 GB AWE
-c N对象/块计数(必须放在最后尽可能多-d 100 -c 5 → 5 块×100 MB
-d MB泄漏并触摸物理内存(最常用)1 MB-d 5120 → 占用 5 GB 物理内存
-e S两次分配间隔(秒)0-e 1 → 每 1 s 分配一次
-g B创建 GDI 句柄(字节)1 B-g 0 → 耗尽全部 GDI
-h创建内核句柄(事件等)-h -c 10000 → 1 万个句柄
-i耗尽 USER 桌面堆-i
-l N分配大页面(数量)-l 10 → 10 个大页面
-m MB仅泄漏内存(不强制驻留)1 MB-m 4096 → 4 GB 提交
-p创建新进程-p -n 100 → 100 个最小工作集进程
-r MB仅保留虚拟地址空间1 MB-r 8192 → 保留 8 GB 虚拟内存
-s MB泄漏共享内存(section)1 MB-s 512 → 512 MB 共享内存
-t N创建线程-t -n 256 → 256 个线程,各 256 KB 栈
-u创建 USER 菜单句柄-u -c 5000 → 5000 个菜单句柄
-v MB分配并 VirtualLock 锁定内存1 MB-v 2048 → 锁定 2 GB 到工作集
-w将工作集最小值抬到最高-w

3.3 安装使用 testlimit

  • 解压Testlimit.zip压缩包
  • 打开PowerShell,切换到解压的目录
cd C:\Users\user\Desktop\Testlimit
  • 查看资源管理器,当前还有多少内存,总共多少内存,需要达到多少%,计算大概需要占用的内存

可以看到是总共16G内存,可用的还有12.7G,比如我们的cpu要达到60%,那么还需要占用约7000M,计算是6.3G,可以往上加200-2000M,因为直接写6300会有误差,也有可能其他进程会掉导致内存下降,所以,比计算的尽量再大200-2000M都行;
如果感觉计算麻烦,或者是说大一些比如只要超过60%就行,那么直接用总内存*0.6也行;

  • 使用 Testlimit64.exe 命令压测内存:Testlimit64.exe -d -c xxx。 xxx 是以MB为单位。
Testlimit64.exe -d -c 7000

  • 也可也查看任务管理器,进程,内存排序,就可以看到此程序占用多少%。

  • 根据自己需求调整要跑内存大小。

四、安装包下载地址

百度网盘(Windows压力测试工具):
https://pan.baidu.com/s/1wJxZrgcP52t-sdntxOnk7w?pwd=winy

优快云资源下载(Windows压力测试工具):
https://download.youkuaiyun.com/download/liu_chen_yang/92360704

五、参考文献

标题文章链接
windows系统下压力测试工具(cpu使用率,内存使用率,磁盘使用率,磁盘空间)https://blog.youkuaiyun.com/zsc_976529378/article/details/127734138
评论 32
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

A-刘晨阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值