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
  • 🧮 Configurable Algorithms: Choose between 5 different computation types (busy-wait, PI, primes, matrix, fibonacci)
  • ⏱️ Time-Controlled Execution: All algorithms respect precise timing for accurate load percentages
  • 📊 Real-Time Monitoring: Live WebSocket updates showing actual CPU usage and temperature 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
  • 🌡️ Temperature Monitoring: Optional CPU temperature tracking with sensor auto-detection
  • 📡 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)
  • --disable-temperature: Disable CPU temperature monitoring
  • --computation-type TYPE: Set computation algorithm (busy-wait, pi, primes, matrix, fibonacci)
  • --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)

Computation Types

CPU Loader supports different computation algorithms for load generation with precise time control:

  • busy-wait (default): Simple busy loop - fastest execution, minimal overhead, most accurate timing
  • pi: PI calculation using Leibniz formula - moderate computational intensity, mathematical workload
  • primes: Prime number finding - variable computational load, cryptographic-style operations
  • matrix: 4x4 matrix multiplication - consistent computational patterns, linear algebra operations
  • fibonacci: Lightweight mathematical operations - balanced computational load with micro-pauses

All algorithms are time-controlled to ensure accurate load percentages. The system uses 10ms cycles with frequent timing checks to maintain precise CPU utilization.

Examples:

# Use PI calculation for CPU load
uv run cpu-loader --computation-type pi

# Use prime number calculation
uv run cpu-loader --computation-type primes --port 8001

# Use matrix multiplication
uv run cpu-loader --computation-type matrix

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}'

Get Computation Type

curl http://localhost:8000/api/computation-type

Response:

{
  "computation_type": "pi",
  "available_types": ["busy-wait", "pi", "primes", "matrix", "fibonacci"]
}

Set Computation Type

curl -X PUT http://localhost:8000/api/computation-type \
  -H "Content-Type: application/json" \
  -d '{"computation_type": "fibonacci"}'

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

Computation Types Demo

A comprehensive demo script is available in examples/computation_types_demo.py to test all computation algorithms:

# Start the server
uv run cpu-loader

# In another terminal, run the demo (tests all computation types)
python examples/computation_types_demo.py

# Test specific computation types only
python examples/computation_types_demo.py --types pi fibonacci

# Custom load and duration
python examples/computation_types_demo.py --load 50 --duration 15

The demo script:

  • Tests each computation type systematically
  • Monitors actual CPU usage vs. target load
  • Provides performance comparisons between algorithms
  • Shows timing accuracy for each computation method

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 and computation types
  • Stress Testing: Validate system stability under high CPU utilization with different algorithms
  • Thermal Testing: Use fibonacci or matrix computations for maximum heat generation
  • Power Consumption Analysis: Compare power usage across different computation algorithms
  • Benchmarking: Create reproducible load scenarios with specific computation patterns
  • Algorithm Testing: Test cache performance (matrix), mathematical units (pi), or crypto operations (primes)
  • IoT Integration: Integrate with Home Assistant, Node-RED, or other MQTT-based systems
  • Monitoring: Feed CPU metrics and temperature data into monitoring dashboards via MQTT

Computation Algorithm Use Cases

  • busy-wait: Baseline testing, pure timing validation, minimal computational overhead
  • pi: Mathematical processing benchmarks, floating-point unit testing
  • primes: Cryptographic algorithm simulation, integer arithmetic testing
  • matrix: Linear algebra workloads, cache hierarchy testing, SIMD instruction testing
  • fibonacci: Balanced computational load for general stress testing

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.5.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.5.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (43.0 kB view details)

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

cpu_loader-0.5.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (44.3 kB view details)

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

cpu_loader-0.5.7-cp312-cp312-macosx_11_0_arm64.whl (30.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

cpu_loader-0.5.7-cp312-cp312-macosx_10_13_x86_64.whl (30.7 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

cpu_loader-0.5.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (42.9 kB view details)

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

cpu_loader-0.5.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (44.3 kB view details)

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

cpu_loader-0.5.7-cp311-cp311-macosx_11_0_arm64.whl (30.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

cpu_loader-0.5.7-cp311-cp311-macosx_10_9_x86_64.whl (30.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

cpu_loader-0.5.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (42.9 kB view details)

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

cpu_loader-0.5.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (44.3 kB view details)

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

cpu_loader-0.5.7-cp310-cp310-macosx_11_0_arm64.whl (30.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

cpu_loader-0.5.7-cp310-cp310-macosx_10_9_x86_64.whl (30.7 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

cpu_loader-0.5.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (42.7 kB view details)

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

cpu_loader-0.5.7-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (44.1 kB view details)

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

cpu_loader-0.5.7-cp39-cp39-macosx_11_0_arm64.whl (30.8 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

cpu_loader-0.5.7-cp39-cp39-macosx_10_9_x86_64.whl (30.7 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: cpu_loader-0.5.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.5.7.tar.gz
Algorithm Hash digest
SHA256 88abd33c6bba76e5b62a33737960bad4ddded90d8a2f0d68a10e2d473e96651f
MD5 50158921220030d91f6db5c9ec0b0344
BLAKE2b-256 b55483694693370983c0cc100907856f7957e09e96a1d4baae11c7420571779c

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.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.5.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f31203e45421b66e2ae95ef050081c958980ef9a90d089f7e4088e4663532808
MD5 5e556d2bf98eefcb541715cbd988ec27
BLAKE2b-256 764d87ef39713afbb3a3cc13217b4e6894c1fccc13c223e92402931ae0526aeb

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e393bd79a3b9d71401e021821ffddd845addee235beced362d01cf6d0164849a
MD5 8b309e53ec4046df13dcc8f1e5520d94
BLAKE2b-256 83cf2bcc842f7b85c93543db71c0912ce9051e89dbd48bec8c59649ced14122f

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 66d000c0534dadf8f0ee2e17048ef8761c1553662153849d9c8b67107c0131fc
MD5 f6b624fd721175418199e0d6caf01721
BLAKE2b-256 9ec22a0cec26c73b9b6d6d972b98fa6f70255a5e8796dfa769eca96c9452b38b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 6f016fcdfcd6da301ff10ad7482f44fabca90142bc42f5e9c8a0c0b0a0615519
MD5 7b3ab79100898baf77c1319b6ffe9305
BLAKE2b-256 10308fa24db0f92d8411801fcd8d14ce3cff8c62b9af668806995473d36ea5cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.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.5.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ddec385f6f664d55e8838b2474cfbfac81ed169c9499dec32b86e149d004fa86
MD5 84984e1e4c8048e4a15f4ead16928118
BLAKE2b-256 7e7dc2b30e5d6a60cb8704fb4c8898324fc952a555dfaa787f661c8c2f7a96b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 af2670d7d6290af02224d33b705675e9e70121ebbf5620d8e495f7d28ce3ff0c
MD5 d12b6ebf1de30ba6f97a97f534ad371a
BLAKE2b-256 c9ed38aed4ceac14bb45904ff9fe9093936767972ff56b3adf8e3918f486f7df

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b512bae3d0f2f8258ff1289cdbc9eb7f3d83d38a4ad4f47621e0e2f2b3aae675
MD5 a21dbe16b84c5f53a9f3e634e3a594e8
BLAKE2b-256 744535b591ccca2ee5c09a1fd29f987ee48c4a4b5327b8b85b54fa3514fc9708

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 fbd96b8086231f316c47e576247daa3e44b8e28bd6285bc514808fef3a2fcd0d
MD5 9f3a8b9df0379e1e9320f19b683fd07c
BLAKE2b-256 5aff8947bca5001101a51258594ad389a1134dc99e8b8ba86305c78929735f17

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.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.5.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 04da14f40fde37e5dbdc742e915280076ad9b42153e0a8d0513cb43e5294586a
MD5 bf8593cf6cdc60f151b2c49381a55d5a
BLAKE2b-256 d1a7a76167de146c8c963a09eaa6849e6ea43884ee23127463124e3218ff26b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4291f998edf6d9c04e14cbbd0a11a0cb74873f0490ab904d154828eac6b8bf03
MD5 38d04f8d798ff0d218eeea25032d78dd
BLAKE2b-256 3effd076cefb3878131d77893534234e4e62d3e890ec2672ad4fe9588a101721

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5a9e8a71466b5c89a99fe65cc14cd2c9a962888f3dfd32324dbf92dfe41610c6
MD5 f5a5b633fccce20460d9ca7478d82624
BLAKE2b-256 0f07b78fa3ce94a75869c7b13fa16cd0f48d723982a6370ccc6ec8b8e6e59c1f

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 ddad2b4d96b0d043eacd2a84f05236531736118ef3a7f10c8ccc5ec0c326f2f1
MD5 616497c13c5150b98fc1dd2cb9aacde9
BLAKE2b-256 9a9b66f48a5ec3d7046a79c580082ef656be68069eb5467f6e4e8b62d42cc5e9

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.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.5.7-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 17ef056da846fabaea1df2d94ba591a9d03f4eb4d314f93b161f8c631725f41f
MD5 06fed9a217d4b9a897797866b572bccf
BLAKE2b-256 2930d626d959db4d654b2284e2de4093aee6e367d01dec59e0c3ee8c732916c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c96b3d875bc454517134c4637eb9c9e019ada1c120fa270b9a60edbea28f9825
MD5 2c903a3d27b5a035e336e2663b0f4e0b
BLAKE2b-256 efb997a6d7694ca3738306cf51c965b618af7887174206ae54d4344345f02dac

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 98f32066bdb777df16a1f7309a1a77f18574bce73e9486af995238ac73114ef0
MD5 cb408e189b29b44aa19f88aa51232bcb
BLAKE2b-256 6aa2789582a12e9aee15784979acc773f319a68334cd95094c3f44aae2a5570b

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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.5.7-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for cpu_loader-0.5.7-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 25a301be6423bc9615cc190dc5a1b877cd2cda41bb6792c0fe62004c05be22cc
MD5 3094d5efb65f3ed4289259fbe46705d8
BLAKE2b-256 063cbb084ebc1ce2b70cb61b1500dc6d24f9334054a02417a206527cb30e70e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for cpu_loader-0.5.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