- CMake 95.2%
- Python 2.1%
- Shell 1.4%
- C 0.6%
- HTML 0.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| archive | ||
| ascii | ||
| bin | ||
| lib | ||
| pip | ||
| share/cmake-3.22 | ||
| stressmon@94126e00d9 | ||
| webui | ||
| .gitattributes | ||
| .gitignore | ||
| .gitmodules | ||
| amddevids | ||
| compare.ptx | ||
| IGNORE_PATTERNS | ||
| inteldevids | ||
| menu | ||
| PATTERNS | ||
| README.md | ||
| rma-setup.sh | ||
| rsync-filter.txt | ||
| s76-burn-in.sh | ||
| s76-check.sh | ||
| s76-disable-suspend.sh | ||
| s76-gpu-burn.sh | ||
| s76-journalctl.sh | ||
| s76-kernel-benchmark.sh | ||
| s76-llvm-stress.sh | ||
| s76-setup-testpy.sh | ||
| s76-setup-unigine.sh | ||
| s76-stress-ng.sh | ||
| s76-stress-tests.sh | ||
| s76-stress.sh | ||
| s76-testguipy.sh | ||
| s76-testpy.sh | ||
| s76-unigine-valley.sh | ||
| s76-webui.sh | ||
| s76burnin.py | ||
| s76setuptestpy.py | ||
| s76utils.py | ||
| stress-ng_revert | ||
| sudomodule.py | ||
| system76_thelio_io_2_default.uf2 | ||
| test.py | ||
| test_gui.py | ||
| test_gui.tar.xz | ||
| trubble-stress-scripts.sh | ||
| valley_1.0.cfg | ||
| venids | ||
System76 Stress Test Scripts
This repository contains a collection of Bash scripts designed to stress test various components of your system, such as CPU, GPU, and memory. There is also a Python script included that monitors hardware sensors.
Main Stress Test Script
The main script (s76-stress-tests.sh) is a Bash script that orchestrates the execution of the other scripts based on the provided command-line arguments.
Usage
s76-stress-tests.sh [options]
Options
-hDisplay this message and exit.-gUse glmark2.-c FUse stress-ng conf file F.-iUse integrated graphics.-nUse stress-ng instead of stress.-sSkip the GPU stress tests.-t HHTime to run gpu_burn in hours.-uSkip the NVIDIA check and just run Unigine Valley
Stress Test Scripts
This repository contains the following stress test scripts:
s76-testpy.sh: This script sets up and runs thetest.pyPython script in a new terminal. Thetest.pyscript is used for hardware sensor monitoring and logging. Before runningtest.py, the script executess76-setup-testpy.shwhich installs necessary apt packages and Python packages. The new terminal withtest.pyrunning will appear at a specified screen position.s76-setup-gpu-burn.sh: This script sets up the environment fors76-gpu-burn.sh. It checks if the required dependencies (git, gnome-terminal, and NVIDIA CUDA Toolkit) are installed and if not, it installs them. It then clones the GPU-Burn repository from GitHub, fetches the latest updates, and builds the project. If CUDA was not previously installed, it also reboots the system to ensure the changes are properly applied.s76-gpu-burn.sh: This script is designed to stress test your GPU using the GPU-Burn tool. It first checks if the necessary dependencies (git, gnome-terminal, and GPU-Burn tool itself) are installed and if not, it installs them. It then runs GPU-Burn for a specified number of hours (default is 24 hours), opening two new terminals: one for the GPU-Burn tool and another to monitor GPU statistics usingnvidia-smi.- s76-unigine-valley.sh: This script ...
- s76-disable-suspend.sh: This script ...
- s76-htop.sh: This script ...
- s76-stress.sh: This script ...
- s76-stress-ng.sh: This script ...
- s76-glmark2.sh: This script ...
Sensor Monitoring Script sensor_monitor.py: This Python script monitors hardware sensors and reports their readings. ...
(Note: Provide a brief description of what the script does, what sensors it monitors, etc.)
Requirements Linux (tested on Ubuntu 18.04 and 20.04) Bash Python (for the sensor monitoring script) Installation To use these scripts, clone this repository to your local machine:
bash Copy code git clone https://github.com/yourusername/system76-stress-test-scripts.git Running the Tests To run the main stress test script with default settings, navigate to the repository directory and run:
bash Copy code ./s76-stress-tests.sh
Web UI
A Flask-based web UI is available for launching and monitoring stress test profiles from a browser.
Usage
# Install Flask (first time only)
pip3 install flask --user --break-system-packages
# Start the web UI on port 5000
./s76-webui.sh
# Or specify a custom port
./s76-webui.sh 8080
Then open http://localhost:5000 in a browser.
Available Profiles
- CPU + Memory Stress — stress-ng with configurable runtime and integrated graphics option
- GPU Burn — NVIDIA GPU stress test via gpu_burn
- LLVM Stress Test — CPU/memory/I/O stress via LLVM compilation
- Unigine Valley GPU — OpenGL GPU benchmark
- Sensor Monitor — Real-time hardware sensor monitoring
- Full Burn-in Test — (terminal interactive, run via
s76burnin.py)
The web UI shows running processes with live log streaming, stop controls, and elapsed time tracking.