当前位置: 首页 > news >正文

Windows、Linux系统上进行CPU和内存压力测试

CPU和内存压力测试

1. Linux环境

Linux环境下,我们可以用 stress 工具进行内存、CPU等的压力测试。

【1】. stress工具说明

[kalami@kysrv1 ~]$ stress --help
`stress' imposes certain types of compute stress on your systemUsage: stress [OPTION [ARG]] ...-?, --help         show this help statement--version      show version statement-v, --verbose      be verbose-q, --quiet        be quiet-n, --dry-run      show what would have been done-t, --timeout N    timeout after N seconds--backoff N    wait factor of N microseconds before work starts-c, --cpu N        spawn N workers spinning on sqrt()-i, --io N         spawn N workers spinning on sync()-m, --vm N         spawn N workers spinning on malloc()/free()--vm-bytes B   malloc B bytes per vm worker (default is 256MB)--vm-stride B  touch a byte every B bytes (default is 4096)--vm-hang N    sleep N secs before free (default none, 0 is inf)--vm-keep      redirty memory instead of freeing and reallocating-d, --hdd N        spawn N workers spinning on write()/unlink()--hdd-bytes B  write B bytes per hdd worker (default is 1GB)Example: stress --cpu 8 --io 4 --vm 2 --vm-bytes 128M --timeout 10sNote: Numbers may be suffixed with s,m,h,d,y (time) or B,K,M,G (size).
[kalami@kysrv1 ~]$

【2】. CPU压力测试

命令格式如下:

stress -c 10 -v --timeout 10s

模拟10个任务。

在这里插入图片描述

top命令查看压力测试效果:

在这里插入图片描述

【3】. 内存压力测试

命令格式如下:

stress --vm 20 --vm-bytes 4096M --timeout 10s

压力测试前的内存情况如下:

在这里插入图片描述

执行内存压力测试:

在这里插入图片描述

top命令查看压力测试效果:

在这里插入图片描述

2. Windows环境

CPU压力测试推荐使用 CpuStres 工具,内存压力测试推荐使用 Testlimit 工具。

【1】. 压力测试工具

CpuStres工具

CpuStres 工具可以通过在紧密循环中运行多达 64 个线程来模拟 CPU 活动。

下载地址(中文): CpuStres - Sysinternals | Microsoft Learn

https://learn.microsoft.com/zh-cn/sysinternals/downloads/cpustres

在这里插入图片描述

下载地址(英文): CpuStres - Sysinternals | Microsoft Learn

https://learn.microsoft.com/en-us/sysinternals/downloads/cpustres

在这里插入图片描述

Testlimit工具

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

下载地址(中文): Testlimit - Sysinternals | Microsoft Learn

https://learn.microsoft.com/zh-cn/sysinternals/downloads/testlimit

在这里插入图片描述

下载地址(英文): Testlimit - Sysinternals | Microsoft Learn

https://learn.microsoft.com/en-us/sysinternals/downloads/testlimit

在这里插入图片描述

解压测试工具包。

在这里插入图片描述

【2】. CPU压力测试

CpuStres 工具可以通过在紧密循环中运行多达 64 个线程来模拟 CPU 活动。

双击运行 CPUSTRES.EXE 工具,界面如下图所示:

在这里插入图片描述

增加工作线程

方法一:

菜单-->Process-->Create 4 Threads

在这里插入图片描述

方法二:

主视图空白处-->右键菜单-->Create 4 Threads

在这里插入图片描述

方法三:

工具栏-->点击“Create Thread” 按钮

在这里插入图片描述

设置工作线程优先级

方法一:

菜单栏-->Process-->Priority Class

在这里插入图片描述

方法二:

主视图空白处-->右键菜单-->Priority Class

在这里插入图片描述

设置工作线程运行级别

方法:

菜单栏-->Thread-->Activity Level

在这里插入图片描述

压力测试

设置线程数-->选中相关线程-->设置优先级

在这里插入图片描述

选中相关线程-->设置运行级别

在这里插入图片描述

选中相关线程-->运行

在这里插入图片描述

开始CPU压力测试

在这里插入图片描述

CPU曲线

在这里插入图片描述

【3】. 内存压力测试

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

用法: Testlimit [[-h [-u]] | [-p [-n]] | [-t [-n [KB]]] | [-u [-i]] | [-g [对象大小]] | [-a|-d|-l|-m|-r|-s|-v [MB]] | [-w]] [-c [计数]] [-e [秒数]]

参数说明
-a以指定的 MB 单位泄漏地址窗口扩展 (AWE) 内存(默认值为 1)
-c要分配的对象计数(默认值是“尽可能多”)。 这必须是指定的最后一个选项
-d以指定的 MB 单位泄漏和触摸内存(默认值为 1)
-e两次分配之间经过的秒数(默认值为 0)
-g创建指定大小的 GDI 句柄(默认为 1 字节)。 将大小指定为 0 将导致 GDI 对象耗尽
-h创建句柄。 指定 -u 也会分配文件对象
-i耗尽 USER 桌面堆
-l分配指定数量的大页面
-m以指定的 MB 单位泄漏内存(默认值为 1)
-p创建进程 - 添加 -n 以设置最小工作集。 添加 -n 以将进程的最小工作集设置为最小
-r以指定的 MB 单位保留内存(默认值为 1)
-s以指定的 MB 单位泄露共享内存(默认值为 1)
-t创建线程 - 添加 -n 以指定最小堆栈保留(以 KB 为单位)
-u创建菜单的 USER 句柄
-v以指定的 MB 单位对内存执行 VirtualLock(默认值为 1)
-w将工作集最小值重置为最高可能值

英文说明

usage: testlimit [[-h [-u]] | [-p [-n]] | [-t [-n [KB]]] | [-u [-i]] | [-g [object size]] | [-a|-d|-l|-m|-r|-s|-v [MB]] | [-w]] [-c [count]] [-e [seconds]]-a       Leak Address Windowing Extensions (AWE) memory inspecified MBs (default is 1).-c       Count of number of objects to allocate (default is as many aspossible). This must be the last option specified.-d       Leak and touch memory in specified MBs (default is 1).-e       Seconds elapsed between allocations (default is 0).-g       Create GDI handles of specified size (default 1 byte).Specify a size of 0 to cause GDI object exhaustion.-h       Create handles. Specify -u to also allocate file objects.-i       Exhaust USER desktop heap.-l       Allocate the specified amount of large pages (rounded to largesize multiple.-m       Leak memory in specified MBs (default is 1).-p       Create processes - add -n to set min working set. Add -n toset min working set of processes to smallest.-r       Reserve memory in specified MBs (default is 1).-s       Leak shared memory in specified MBs (default is 1).-t       Create threads - add -n to specify minimum stack reserve (in KB).-u       Create USER handles to menus.-v       VirtualLock memory in specified MBs (default is 1).-w       Reset working set minimum to highest possible value.

进行内存压力测试

Testlimit.exe -v 512 -p 10

在这里插入图片描述

在这里插入图片描述

相关文章:

Windows、Linux系统上进行CPU和内存压力测试

CPU和内存压力测试 1. Linux环境 Linux环境下,我们可以用 stress 工具进行内存、CPU等的压力测试。 【1】. stress工具说明 [kalamikysrv1 ~]$ stress --help stress imposes certain types of compute stress on your systemUsage: stress [OPTION [ARG]] ...-…...

FFmpeg 4.3 音视频-多路H265监控录放C++开发八,使用SDLVSQT显示yuv文件 ,使用ffmpeg的AVFrame

一. AVFrame 核心回顾,uint8_t *data[AV_NUM_DATA_POINTERS] 和 int linesize[AV_NUM_DATA_POINTERS] AVFrame 存储的是解码后的数据,(包括音频和视频)例如:yuv数据,或者pcm数据,参考AVFrame结…...

HTML 标签属性——<a>、<img>、<form>、<input>、<table> 标签属性详解

文章目录 1. `<a>`元素属性hreftargetname2. `<img>`元素属性srcaltwidth 和 height3. `<form>`元素属性actionmethodenctype4. `<input>`元素属性typevaluenamereadonly5. `<table>`元素属性cellpaddingcellspacing小结HTML元素除了可以使用全局…...

css简写属性

一些属性&#xff0c;如 font、background、padding、border 和 margin 等属性称为简写属性。它们允许在一行中设置多个属性值&#xff0c;从而节省时间并使代码更整洁。 /* 在像 padding 和 margin 这样的 4 值简写语法中&#xff0c;数值的应用顺序是上、右、下、左&#xff…...

力扣刷题(sql)--零散知识点(2)

1.自定义分组后的分类统计问题&#xff08;某组内无数据却仍要展示&#xff09; 例题1&#xff1a; 查询每个工资类别的银行账户数量。 工资类别如下&#xff1a; "Low Salary"&#xff1a;所有工资 严格低于 20000 美元。"Average Salary"&#xff1a;…...

TCP是怎样工作的网络拥塞控制理论和算法部分记录

参考资料 https://github.com/ituring/tcp-book 流量控制、窗口控制和拥塞控制的关系 流量控制、窗口控制和拥塞控制的关系如图所示 窗口控制是上层的概念&#xff0c;核心思路是基于滑动窗口技术传输数据。而确定发送窗口大小的方法有流量控制和拥塞控制两种 流量控制&…...

CSRF初级靶场

靶场 针对DVWA么有防御 源码&#xff1a; <?phpif( isset( $_GET[ Change ] ) ) {// Get input$pass_new $_GET[ password_new ];$pass_conf $_GET[ password_conf ];// Do the passwords match?if( $pass_new $pass_conf ) {// They do!$pass_new ((isset($GLOBA…...

CSP/信奥赛C++刷题训练:经典差分例题(2):洛谷P9904 :Mieszanie kolorów

CSP/信奥赛C++刷题训练:经典差分例题(2):洛谷P9094 :Mieszanie kolorw 题目描述 题目译自 PA 2020 Runda 1 Mieszanie kolorw Byteasar 正准备给栅栏涂漆。他已经准备了 n n n 罐白色油漆,他把这些油漆排列成一排,从 1 1 1 到 n n n 编号。他想用这些油漆,但他不想…...

Java | Leetcode Java题解之第525题连续数组

题目&#xff1a; 题解&#xff1a; class Solution {public int findMaxLength(int[] nums) {int maxLength 0;Map<Integer, Integer> map new HashMap<Integer, Integer>();int counter 0;map.put(counter, -1);int n nums.length;for (int i 0; i < n;…...

YOLOv8改进 - 注意力篇 - 引入iRMB注意力机制

#YOLO# #目标检测# #计算机视觉# 一、本文介绍 作为入门性篇章&#xff0c;这里介绍了iRMB注意力在YOLOv8中的使用。包含iRMB原理分析&#xff0c;iRMB的代码、iRMB的使用方法、以及添加以后的yaml文件及运行记录。 二、iRMB原理分析 iRMB官方论文地址&#xff1a;文章 iR…...

项目学习总结

文章目录 项目学习总结项目中的vw适配vw使用 封装axios实例axios常见请求配置axios响应结构axios拦截器配置Vue Router全局前置守卫 项目学习总结 在智慧商城项目中的学习总结。 项目中的vw适配 vw 是一种长度单位&#xff0c;代表视口宽度的百分比。1vw 等于视口宽度的1%。…...

用于低成本接收机的LoRa SF11 500KHz波形检测解调算法

前一篇里&#xff0c;获取了LORAwan的物理层波形&#xff0c;并通过Octave查看了它的瞬时频率。LoRa是私有协议&#xff0c;网上已经有了很不错的开源的实现&#xff0c;如&#xff1a; S2_LoRa通信实验 LoRaPhy 以及GNU-Radio的Lora模块、LimeSDR的Lora实现。当我试图修改上…...

WEB防护

WEB防护的范围比较广&#xff0c;主要是指针对web安全而做的各种防御措施&#xff0c; 包含应对xss、csrf等漏洞攻击的应对方式。 Web防护是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品&#xff0c; 主要用于防御针对网络应用层的攻击&#xff0…...

使用Jest进行JavaScript单元测试

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 使用Jest进行JavaScript单元测试 引言 Jest 简介 安装 Jest 创建基本配置 编写测试用例 运行测试 快照测试 模拟函数 代码覆盖率…...

网络安全法详细介绍——爬虫教程

目录 [TOC](目录)一、网络安全法详细介绍1. 网络安全法的主要条款与作用2. 网络安全法与爬虫的关系3. 合法使用爬虫的指南 二、爬虫的详细教程1. 准备环境与安装工具2. 使用requests库发送请求3. 解析HTML内容4. 使用robots.txt规范爬虫行为5. 设置请求间隔6. 数据清洗与存储 三…...

PCB什么情况该敷铜,什么情况不该敷铜!

更多电路设计&#xff0c;PCB设计分享及分析&#xff0c;可关注本人微信公众号“核桃设计分享”&#xff01; 这个是老生常谈的问题了&#xff0c;可私底下还是有很多小伙伴问核桃这个问题&#xff0c;所以今天就好好聊一聊这个话题。 先说结论&#xff1a;PCB不是什么时候都可…...

标准化的企业级信息管理系统信息中心必备PHP低代码平台

谈谈企业级信息管理系统&#xff01; 1. 标准化的企业级信息管理系统是信息中心必备&#xff0c;这才是集团该用的信息化管理系统。其有个很大特点是便于开发&#xff0c;能服务于企业技术中心&#xff0c;为其提供强大工具能力&#xff0c;在工具能力架构下通过流程、表单、报…...

Rust 力扣 - 1984. 学生分数的最小差值

文章目录 题目描述题解思路题解代码题目链接 题目描述 题解思路 原数组 nums 排序&#xff0c;遍历nums中下标为[0, nums.len() - k]的学生分数 假设当前遍历的下标为i则&#xff0c;以 i 下标为最小值的学生分数的最小差值为nums[i k - 1] - nums[i] 取最小差值的最小值即…...

【098】基于SpringBoot+Vue实现的垃圾分类系统

系统介绍 视频演示 基于SpringBootVue实现的垃圾分类系统 基于SpringBootVue实现的垃圾分类系统设计了三种角色、分别是管理员、垃圾分类管理员、用户&#xff0c;实现了个人中心、用户管理、垃圾分类管理员管理、垃圾分类管理、垃圾类型管理、垃圾图谱管理、系统管理等功能 …...

STM32CUBEIDE FreeRTOS操作教程(八):queues多队列

STM32CUBEIDE FreeRTOS操作教程&#xff08;八&#xff09;&#xff1a;queues多队列 STM32CUBE开发环境集成了STM32 HAL库进行FreeRTOS配置和开发的组件&#xff0c;不需要用户自己进行FreeRTOS的移植。这里介绍最简化的用户操作类应用教程。以STM32F401RCT6开发板为例&#…...

微信支付回调通知收不到的5个隐藏坑(附.NET Core实战解决方案)

微信支付回调通知失效的深度排查与.NET Core实战指南 当支付流程顺利完成但回调通知却神秘消失时&#xff0c;这种"薛定谔式的支付成功"往往让开发者陷入调试泥潭。本文将揭示五个容易被忽视的技术暗礁&#xff0c;并提供可直接集成到生产环境的.NET Core解决方案。 …...

Uvicorn与Couchbase Analytics Service集成:构建高性能数据分析API的终极指南

Uvicorn与Couchbase Analytics Service集成&#xff1a;构建高性能数据分析API的终极指南 【免费下载链接】uvicorn An ASGI web server, for Python. &#x1f984; 项目地址: https://gitcode.com/GitHub_Trending/uv/uvicorn 在现代数据驱动的应用开发中&#xff0c;…...

Cursor功能增强工具使用指南

Cursor功能增强工具使用指南 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached your trial request limit. / Too many free t…...

计算机组成原理实验避坑指南:存储器地址映射常见错误及解决方法

计算机组成原理实验避坑指南&#xff1a;存储器地址映射常见错误及解决方法 第一次在Proteus里搭建存储器系统时&#xff0c;看着密密麻麻的地址线和片选信号&#xff0c;我对着实验指导书发呆了半小时——明明按照图示连接了所有线路&#xff0c;可写入RAM的数据总是莫名其妙出…...

计算机网络 之 【网络套接字编程】(固定宽度整数类型、socket常见API、netstat)

目录 一.固定宽度整数类型&#xff08;C11引入&#xff09; 二、socket 常见API socket bind IP地址绑定类型 TCP 编程模型流程图 listen accept connect UDP编程模型流程图 recvfrom 函数 sendto 函数 常用 flags 选项 常用错误码 三、netstat Linux/Unix 选项…...

从朱诺到威尼斯:一个可持续旅游模型如何‘开箱即用’解决你的美赛问题二

从朱诺到威尼斯&#xff1a;可持续旅游模型的跨场景迁移实战指南 模型迁移的核心挑战与解决框架 当我们将一个城市的可持续旅游模型迁移到另一个城市时&#xff0c;表面上看似乎只需要更换数据输入&#xff0c;但实际操作中会遇到三个维度的挑战&#xff1a; 1. 资源禀赋差异 自…...

ms-swift微调框架入门:快速掌握LoRA微调与模型合并技巧

ms-swift微调框架入门&#xff1a;快速掌握LoRA微调与模型合并技巧 1. 引言 在当今大模型技术快速发展的背景下&#xff0c;如何高效地对大型语言模型进行微调成为了许多开发者和研究者的关注焦点。ms-swift作为一款强大的微调框架&#xff0c;提供了丰富的功能和技术支持&am…...

深入STM32F407 USART收发机制:用逻辑分析仪解读数据帧与中断处理流程

深入解析STM32F407 USART通信机制&#xff1a;从数据帧捕获到中断优化实战 在工业自动化、智能硬件等高可靠性应用场景中&#xff0c;串口通信的稳定性和效率往往决定着整个系统的性能边界。STM32F407作为ARM Cortex-M4内核的经典代表&#xff0c;其USART模块在异步通信场景下展…...

突破性SLAM实战:如何用SLAM Toolbox彻底改变机器人定位与建图工作流

突破性SLAM实战&#xff1a;如何用SLAM Toolbox彻底改变机器人定位与建图工作流 【免费下载链接】slam_toolbox Slam Toolbox for lifelong mapping and localization in potentially massive maps with ROS 项目地址: https://gitcode.com/gh_mirrors/sl/slam_toolbox …...

acjscsdbhvusfd

一、yolo v1是什么&#xff1f; YOLO&#xff08;You Only Look Once&#xff09;算法 是一种目标检测算法&#xff0c;是经典的one-stage方法。YOLO v1 开创了单阶段目标检测的先河&#xff0c;其简洁的架构 和高效的推理为后续版本奠定了基础。尽管存在小目标检测和定位精度的…...