Skip to main content

A tool to generate CPU load on a system with runtime configuration through a WebUI and REST API

Project description

CPU Loader

CI Build Wheels Python Version License

A tool to generate CPU load on a system with runtime configuration through a WebUI and REST API.

✨ Key Features

  • 🎯 Precise Per-Thread Control: Set individual CPU load (0-100%) for each core independently
  • ⚡ High Performance: Native C implementation with pthreads ensures accurate load generation
  • 📊 Real-Time Monitoring: Live WebSocket updates showing actual CPU usage via psutil
  • 🎛️ Interactive WebUI: Beautiful gradient interface with sliders and visual feedback
  • 🚀 REST API: Complete programmatic control for automation and testing
  • 📱 Responsive Design: Works seamlessly on desktop and mobile devices
  • 🔄 Instant Updates: Changes take effect immediately with sub-second response time
  • 📡 MQTT Integration: Publish metrics and settings to MQTT broker for IoT/monitoring systems

🖼️ Screenshots

Interface Screenshots

Initial view with zero load

Clean interface showing all CPU threads at idle

Mobile responsive view

Fully responsive mobile interface

Mixed load across threads

Different load levels: 50%, 75%, and 25% on individual threads

Live CPU metrics updating

Real-time metrics showing actual CPU usage with color-coded bars

Features Shown

  • Visual Load Bars: Green progress bars show target load, blue bars display actual CPU usage
  • Real-Time Updates: WebSocket connection provides live metrics every second
  • Preset Buttons: Quick-set options (0%, 25%, 50%, 75%, 100%) for all threads
  • Smooth Gradients: Modern UI with purple-to-blue gradient design

Installation

From Pre-built Wheels (Recommended)

Pre-compiled wheels are available for Linux (x86_64, ARM64) and macOS (x86_64, ARM64):

pip install cpu-loader

From Source

  1. Clone the repository:
git clone https://github.com/the78mole/cpu-loader.git
cd cpu-loader
  1. Install dependencies and build C extension:
uv pip install -e .

This will compile the high-performance C extension for efficient CPU load generation.

  1. (Optional) Set up pre-commit hooks for development:
pre-commit install
  1. (Optional) Set up commit message template for semantic versioning:
git config commit.template .gitmessage

See COMMIT_MESSAGE_FORMAT.md for commit message guidelines.

Usage

Starting the Server

uv run src/main.py

The server will start on http://localhost:8000

Command-Line Options

uv run src/main.py --help

Available Options:

  • --host HOST: Host to bind the server to (default: 0.0.0.0)
  • --port PORT: Port to bind the server to (default: 8000)
  • --mqtt-broker-host HOST: MQTT broker hostname
  • --mqtt-broker-port PORT: MQTT broker port (default: 1883)
  • --mqtt-username USER: MQTT username
  • --mqtt-password PASS: MQTT password
  • --mqtt-topic-prefix PREFIX: MQTT topic prefix (default: cpu-loader)
  • --mqtt-client-id ID: MQTT client ID (default: cpu-loader)

WebUI

Open your browser and navigate to http://localhost:8000

Features:

  • Individual Thread Control: Use sliders to set load for each thread (0-100%)
  • Preset Buttons: Quick-set all threads to 0%, 10%, 25%, 50%, 80%, 90%, or 100%
  • Live Stats: View active thread count and average load
  • Real-time Updates: Changes are applied instantly with visual feedback

REST API

Get Thread Status

curl http://localhost:8000/api/threads

Response:

{
  "num_threads": 4,
  "loads": {
    "0": 0.0,
    "1": 0.0,
    "2": 0.0,
    "3": 0.0
  }
}

Set Load for Specific Thread

curl -X PUT http://localhost:8000/api/threads/0/load \
  -H "Content-Type: application/json" \
  -d '{"load_percent": 50.0}'

Set Load for All Threads

curl -X POST http://localhost:8000/api/threads/load/all \
  -H "Content-Type: application/json" \
  -d '{"load_percent": 75.0}'

Change Number of Threads

curl -X POST http://localhost:8000/api/threads \
  -H "Content-Type: application/json" \
  -d '{"num_threads": 8}'

API Documentation

Once the server is running, visit http://localhost:8000/docs for interactive API documentation powered by Swagger UI.

MQTT Publishing

CPU Loader can publish real-time CPU metrics and load control settings to an MQTT broker for integration with home automation systems, monitoring tools, or custom applications.

MQTT Topics

The application publishes to two topics:

  1. {prefix}/cpu_metrics: Published every second with current CPU utilization

    {
      "total_cpu_percent": 25.5,
      "per_cpu_percent": [25.0, 26.0, 25.3, 25.7]
    }
    
  2. {prefix}/load_settings: Published when load settings change (retained message)

    {
      "num_threads": 4,
      "loads": {"0": 25.0, "1": 25.0, "2": 25.0, "3": 25.0},
      "average_load": 25.0
    }
    

Configuration

MQTT can be configured using environment variables or command-line arguments. Command-line arguments take precedence over environment variables.

Using Environment Variables

export MQTT_BROKER_HOST=mqtt.example.com
export MQTT_BROKER_PORT=1883
export MQTT_USERNAME=myuser
export MQTT_PASSWORD=mypassword
export MQTT_TOPIC_PREFIX=cpu-loader
export MQTT_CLIENT_ID=cpu-loader-001

uv run src/main.py

Using Command-Line Arguments

uv run src/main.py \
  --mqtt-broker-host mqtt.example.com \
  --mqtt-broker-port 1883 \
  --mqtt-username myuser \
  --mqtt-password mypassword \
  --mqtt-topic-prefix cpu-loader \
  --mqtt-client-id cpu-loader-001

Testing with Mosquitto

To test MQTT publishing locally:

# Install mosquitto
sudo apt-get install mosquitto mosquitto-clients

# Start CPU Loader with MQTT
uv run src/main.py --mqtt-broker-host localhost

# Subscribe to all topics (in another terminal)
mosquitto_sub -h localhost -t "cpu-loader/#" -v

MQTT Settings

Setting Environment Variable CLI Argument Default Description
Broker Host MQTT_BROKER_HOST --mqtt-broker-host None MQTT broker hostname or IP
Broker Port MQTT_BROKER_PORT --mqtt-broker-port 1883 MQTT broker port
Username MQTT_USERNAME --mqtt-username None MQTT authentication username
Password MQTT_PASSWORD --mqtt-password None MQTT authentication password
Topic Prefix MQTT_TOPIC_PREFIX --mqtt-topic-prefix cpu-loader Prefix for all MQTT topics
Client ID MQTT_CLIENT_ID --mqtt-client-id cpu-loader MQTT client identifier

Note: If no MQTT broker host is configured, MQTT publishing will be disabled and the application will function normally without it.

Example Script

An example script (src/example.py) is provided to demonstrate programmatic control:

# Start the server first
uv run src/main.py

# In another terminal, run the example
uv run src/example.py

The example demonstrates:

  • Getting current status
  • Setting all threads to a specific load
  • Gradually increasing load
  • Individual thread control
  • Resetting to idle

Architecture

  • src/cpu_loader_core.c: High-performance C implementation using pthreads for CPU load generation
  • src/cpu_loader.py: Python wrapper providing a clean API to the C extension
  • src/main.py: FastAPI application with REST API and embedded WebUI
  • src/mqtt_publisher.py: MQTT client for publishing metrics and settings
  • Threading Model: Native pthreads for maximum efficiency and precise timing
  • Load Algorithm: High-resolution busy-wait loops with nanosecond precision

Requirements

  • Python 3.8+
  • FastAPI 0.115.0+
  • Uvicorn 0.32.0+
  • Pydantic 2.10.0+
  • paho-mqtt 2.1.0+ (for MQTT publishing)
  • C compiler (gcc or clang) for building the extension

Use Cases

  • Performance Testing: Test application behavior under various CPU loads
  • Stress Testing: Validate system stability under high CPU utilization
  • Thermal Testing: Check cooling system effectiveness
  • Power Consumption Analysis: Measure power usage at different load levels
  • Benchmarking: Create reproducible load scenarios
  • IoT Integration: Integrate with Home Assistant, Node-RED, or other MQTT-based systems
  • Monitoring: Feed CPU metrics into monitoring dashboards via MQTT

Development

Pre-commit Hooks

This project uses pre-commit hooks to ensure code quality. The hooks include:

  • Code Formatting: Black and isort for consistent Python formatting
  • Linting: Flake8 for code quality checks
  • Type Checking: Mypy for static type analysis
  • General Checks: Trailing whitespace, end-of-file fixes, YAML/JSON/TOML validation

To run pre-commit manually on all files:

pre-commit run --all-files

The hooks will run automatically on git commit after installation.

Building and Publishing Releases

The project uses automatic semantic versioning with GitHub Actions:

Versioning Rules

Versions are automatically determined based on commit messages:

  • Patch bump (0.0.X): Every commit to main
  • Minor bump (0.X.0): Commits prefixed with feat:
    git commit -m "feat: add new CPU monitoring feature"
    
  • Major bump (X.0.0): Commits with major:, breaking:, or BREAKING CHANGE:
    git commit -m "major: redesign API interface"
    git commit -m "breaking: remove deprecated endpoints"
    

Release Process

  1. Commit and push to main:

    git add .
    git commit -m "feat: add WebSocket support"
    git push origin main
    
  2. Automated workflow:

    • Version is automatically calculated using semantic versioning
    • Wheels are built for Linux (x86_64, ARM64) and macOS (x86_64, ARM64)
    • Python versions: 3.8, 3.9, 3.10, 3.11, 3.12
    • Source distribution (sdist) is created
    • All artifacts are published to PyPI
    • A GitHub Release is created with version tag and artifacts

License

MIT License - see LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cpu_loader-0.4.7.tar.gz (1.4 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

cpu_loader-0.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (36.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

cpu_loader-0.4.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (37.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

cpu_loader-0.4.7-cp312-cp312-macosx_11_0_arm64.whl (26.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

cpu_loader-0.4.7-cp312-cp312-macosx_10_13_x86_64.whl (26.1 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

cpu_loader-0.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (36.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

cpu_loader-0.4.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (37.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

cpu_loader-0.4.7-cp311-cp311-macosx_11_0_arm64.whl (26.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

cpu_loader-0.4.7-cp311-cp311-macosx_10_9_x86_64.whl (26.1 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

cpu_loader-0.4.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (36.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

cpu_loader-0.4.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (37.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

cpu_loader-0.4.7-cp310-cp310-macosx_11_0_arm64.whl (26.6 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

cpu_loader-0.4.7-cp310-cp310-macosx_10_9_x86_64.whl (26.1 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

cpu_loader-0.4.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (35.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

cpu_loader-0.4.7-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (37.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

cpu_loader-0.4.7-cp39-cp39-macosx_11_0_arm64.whl (26.6 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

cpu_loader-0.4.7-cp39-cp39-macosx_10_9_x86_64.whl (26.1 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

Details for the file cpu_loader-0.4.7.tar.gz.

File metadata

  • Download URL: cpu_loader-0.4.7.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cpu_loader-0.4.7.tar.gz
Algorithm Hash digest
SHA256 19da281ca5667c524b7a3fce463da7b5a6c0b3b25481967f2395027afe2c8dd1
MD5 5d723118cf9b1b48ffa19f4fc8f9c5e6
BLAKE2b-256 25ff21596d763723622daa5cae9d1643ca73d693030b475ec15ba15c5952f8e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7.tar.gz:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 92ebd0ffd7fbf628ec28d34e5df53fa519b2cee2c93ff89e6190e589bd32fabf
MD5 7c0722a73fc4f5651871916142ccc1f9
BLAKE2b-256 42d716d2ea416e1ff839351a5d254e59c5bf28b1d758ce8d4ee3291d8cb55bf9

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2408eae60ae7016cdc980744c6ef5162059a0109bc6b54ab846119c9a1e0f958
MD5 4538f719895b05da97b45bd55ce1cd74
BLAKE2b-256 c92554ccd0adc583e30dae263b4cf43df4b30bfdfffc0d70534abe7c7a3054a7

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8dc9758217e09f892d3baacc33cbbc07ba8ae58f743b6c318096e2c5ea4f81f9
MD5 c09bd9fa6f15b82ecca222cb1e165ba1
BLAKE2b-256 c0d00a82b30cfeb23ef13ac377fa76580994b6089f7e8e0e0005ce2021884f89

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4ed13c176192380dcfaf1c063531b7e7c8a189e0cff872f116d5f710c93806d3
MD5 e14b922dfa453b2deff5099617737dd2
BLAKE2b-256 e55c3cec1e7bd0103f92eb1a804d9e2f88ac3a9f9c37bd12f6cb31e2b8db41b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a698605c97ccd7c025159d8bf2abe5ab97fb15023e73c0711c58d14455dfe5c7
MD5 3c344c6e41ee5c43518d38df2b291ec2
BLAKE2b-256 81341c2df27f5d6c1c48a35fdd45a0001f12769169700e5056c5870ff6c803ed

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dfb5ed58d31197b4c54ae63b1667cf1c1ce12db93cbaac32df1b47b065cf03e5
MD5 4d7cea64bfe8cfa055bfc8c1ac5e32dd
BLAKE2b-256 3bfda7531e710ca8637cef838679cecf37b4d42cc2937e4c994914f7451f58cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 394411bc0317ecc0fe3479232bcc521dfab61ce9dd9235f0fa9d218ef0580266
MD5 72b301db0e9f5486fe4f4dec155fce61
BLAKE2b-256 a8bd1f3c7e76266b91c61f0c1664ad15d94fb472d7d3c540567bdb29b308a441

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 b179ff160adc9ca597f48156eb167a3f135d917232bd76e7c27298390fb268c4
MD5 e31da5bdd1bc4e3e988cc38e6bc08aea
BLAKE2b-256 f9b39bd34f66489b4da993556935e9f3a6183496c8e0f1a115efb0e14c6a875e

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 21133c8d9d441c313805d8a01b4b85c3ea5883fc1fa11927ac862ecb31c28dd2
MD5 5528bdd06cbebded65472184f63a4f0a
BLAKE2b-256 50b8e7e8023fff28d4225478a7d8b46c16fd21b0548f2d64f6e0b59f6a11b37d

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b6b63bc9a69a1efc7588fdddace118209253131d3ddbbbe415b32bc27114fb12
MD5 8485804479a7a0ac27d5913cf4ce8460
BLAKE2b-256 f52a3fb2c5d390281d67d5b58e7374663ad7648552809ce1da7a88e736ec2066

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3cf9ce423da9f73135266611f84649eef09b2a7b68002c77703c558593ef988f
MD5 536b6d631f18fdb95eed7bb767727a3c
BLAKE2b-256 45c7d2d73e824c801cfc139fd76b8d6411ea62fb77956eac459dc9a9b4c6365b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d5798fd09f46340cff487a9d831fcdcd64b65761b2891c122b957374fd30ca1d
MD5 33408939f196bcf8f8691c6954b8691e
BLAKE2b-256 7b6dfcb1e374f9217573274d3966f9ad6ccc1a524f51bc9fbf56ce989054bd9b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 de0d5d7fd51a985623750ac15edf37d22231326d006980b90d9af8d9787f9976
MD5 99ca35acce6a199255accc37bb2a8732
BLAKE2b-256 ac2311324919cd346c12993cac7dc5502dda429f6e35333d6e8991901d8b10be

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c6ed485cfa2ffab137c32eb1d07da8c74502feb287af45d4612c188b53e1243e
MD5 e55842fed28fc65933ec064f7fc27cf8
BLAKE2b-256 16713be92e77949b1e8c1ac3fbd748a1f98566cc3bd293448f7dd0fbd1d3d7e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d1810f4f74f0a6699878feb6e0c2f1435acba60116322f3517c7244718e825fb
MD5 c75a3700d18021d392d1338e99053b92
BLAKE2b-256 f187cabc0352d8b176458fcaa4a8081295076392fb4732384588b328aca656b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cpu_loader-0.4.7-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.4.7-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e503fa5f3c224bbf222dbe878b8b5f79fc36bea3c2c14541923f9f9e109d73c6
MD5 75260d695123390ce7c88a93afe215ae
BLAKE2b-256 98d107a5535597cdfea025581c687751cc6bf8e31879f3f4a79e3b91c24854b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.4.7-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: build-wheels.yml on the78mole/cpu-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page