/stressberry

Stress tests for the Raspberry Pi

Primary LanguagePythonMIT LicenseMIT

stressberry

Stress tests and temperature plots for the Raspberry Pi

CircleCI codecov Code style: black awesome PyPi Version GitHub stars PyPi downloads

There are a million ways to cool down your Raspberry Pi: Small heat sinks, specific cases, and some extreme DIY solutions. stressberry is a package for testing the core temperature under different loads, and it produces nice plots which can easily be compared.

Raspberry Pi 4B

| | :--------------------------------------:|:----------------------:|:------:| custom case with fans (@flyingferret, #21) | KKSB case (@JohBod, #31) | Argon One case (@jholloway, #37) | | hex wrench case (@patrickpoirier51, #45) | CooliPi (@CooliPi, #47, #48) | low-profile ice tower case (@leonhess, #54)

Raspberry Pi 3B+

FLIRC case

The famous FLIRC case. Thanks to @RichardKav for the measurements!

Raspberry Pi 3B

| | :-------------------:|:------------------:|:----------:| No fans, heat sinks, or case. | Your average acrylic case from eBay. | FastTech case, full-body aluminum alloy with heat pads for CPU and RAM.

How to

To run stressberry on your computer, simply install it with

[sudo] apt install stress
pip3 install stressberry --user

and run it with

stressberry-run out.dat
stressberry-plot out.dat -o out.png

(Use MPLBACKEND=Agg stressberry-plot out.dat -o out.png if you're running the script on the Raspberry Pi itself.)

The run lets the CPU idle for a bit, then stresses it with maximum load for 5 minutes, and lets it cool down afterwards. The entire process takes 10 minutes. The resulting data is displayed to a screen or, if specified, written to a PNG file.

If you'd like to submit your own data for display here, feel free to open an issue and include the data file, a photograph of your setup, and perhaps some further information.

Testing

To run the tests, just check out this repository and type

pytest

License

stressberry is published under the MIT license.