Skip to main content

A python lib to schedule deep learning tasks on available GPUs.

Project description

GPU Task Scheduler

A simple Python lib to schedule and execute deep learning tasks on available GPUs. It supports:

  • Custom selection of GPUs.
  • Maximum concurrency per GPU.
  • Dynamic task dispatch using threading.

📦 Installation

pip install gpu_task_scheduler

🚀 Usage Example

from gpu_task_scheduler import GPUTaskScheduler

tasks = [
    "python train_model.py --epochs 10",
    "bash run_simulation.sh",
    "python evaluate.py --model checkpoint.pth"
]

scheduler = GPUTaskScheduler(
    wait_interval=10,
    allowed_gpu_ids=[0, 1],
    max_tasks_per_gpu=2
)
scheduler.run_tasks(tasks)

⚙️ Parameters

GPUTaskScheduler(wait_interval=30, allowed_gpu_ids=None, max_tasks_per_gpu=1)

Parameter Type Default Description
wait_interval int 30 Number of seconds to wait before checking again if no GPU is available.
allowed_gpu_ids list[int] None List of GPU indices (e.g., [0, 1]) that the scheduler is allowed to use. If None, all GPUs are considered.
max_tasks_per_gpu int 1 Maximum number of concurrent tasks allowed on a single GPU. Helps share GPU among multiple tasks.

🛠️ Requirements

  • Python 3.6+
  • nvidia-smi available in PATH (NVIDIA drivers installed)

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

gpu_task_scheduler-0.1.0.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

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

gpu_task_scheduler-0.1.0-py3-none-any.whl (4.6 kB view details)

Uploaded Python 3

File details

Details for the file gpu_task_scheduler-0.1.0.tar.gz.

File metadata

  • Download URL: gpu_task_scheduler-0.1.0.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.16

File hashes

Hashes for gpu_task_scheduler-0.1.0.tar.gz
Algorithm Hash digest
SHA256 aae845d17c43c1e69561d633062cd13f362c2a64fa89df83434723d6b32b44eb
MD5 8c353e91ffab53381aa5a06a2e49dcd3
BLAKE2b-256 8f1dc3d4382ad57e3c9ab435867b82d71d88016ba56376136698eb6eb080b969

See more details on using hashes here.

File details

Details for the file gpu_task_scheduler-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for gpu_task_scheduler-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f85f1042925737b90bda535ad114b6a38107d86a53340ea597a6de3f6fef6d33
MD5 034541d72f159895df5cc4ec02c7f1df
BLAKE2b-256 b0d844bd352ba45e6aab6caff0ee249f07e73ebf884abfd5b62572e2e70d7e45

See more details on using hashes here.

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