Skip to main content

A CLI tool that runs GitHub projects on free cloud GPUs

Project description

RunOnGPU

RunOnGPU is a CLI tool that helps you run GitHub projects on a GPU with minimal setup.

It is useful if you want to test CUDA, PyTorch, or other GPU code but do not have a local NVIDIA GPU.

Requirements

  • Windows
  • Python 3.12.13+
  • Git
  • Google Chrome
  • Google account for Colab

Install

  1. Install anaconda with Python >= 3.12.13 for smooth performance
  2. Run following commands in your conda enviroment
  3. Make sure you do not touch chrome or move around your cursor as the program runs the code.
pip install runongpu

Check setup:
runongpu doctor

Quick Start

Go to the project you want to run and initialize RunOnGPU:

runongpu init

Enter your GitHub repo URL when asked.

This creates a runongpu.txt file. Edit this file to tell RunOnGPU how to set up, build, test, and run your project.

Then run:

runongpu run

RunOnGPU will open Colab, copy the starter notebook, clone your repo, set the runtime to a T4 GPU, and run your commands. If for some reason, it doesn't work on the first try, press enter in your command line interface to restart the program.

runongpu.txt

You need this to run neccesary commands. You must edit this file to ensure your program runs smoothly.

runongpu.txt controls what happens inside Colab.

It has four sections:

[setup]
# install dependencies here

[build]
# compile or build the project here

[test]
# run tests here

[run]
# run the final program here

Add one command per line.

Example: CUDA

If your repo has this structure:

my-cuda-project/
├── main.cu
└── runongpu.txt

Use:

[setup]

[build]
nvcc main.cu -o vector_add

[test]

[run]
./vector_add

Example: CUDA in a Subfolder

If your repo has this structure:

runongpu-examples/
├── cuda/
│   └── vector-add/
│       └── main.cu
└── runongpu.txt

Use:

[setup]

[build]
cd cuda/vector-add && nvcc main.cu -o vector_add

[test]

[run]
cd cuda/vector-add && ./vector_add

Example: Python

[setup]
pip install -r requirements.txt

[build]

[test]
pytest

[run]
python main.py

Example: CMake

[setup]

[build]
cmake -S . -B build
cmake --build build

[test]
ctest --test-dir build --output-on-failure

[run]
./build/my_program

Notes

On the first run, you may need to sign into Google Colab. RunOnGPU saves the copied notebook URL and reuses it on future runs.

Do not interact with the Colab window while RunOnGPU is setting it up.

Run Tests

python -m pytest

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

runongpu-1.0.1.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

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

runongpu-1.0.1-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file runongpu-1.0.1.tar.gz.

File metadata

  • Download URL: runongpu-1.0.1.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for runongpu-1.0.1.tar.gz
Algorithm Hash digest
SHA256 bc73f50e1e5513dd8376405ac8c93656ce47521446894340e95ed1ee33d8d61b
MD5 5b0226daedd4c716d79a614fbd82ff25
BLAKE2b-256 66f54cc28deca323c5b7c116d82483652e04739bcddf037c5cbb438a1d214927

See more details on using hashes here.

Provenance

The following attestation bundles were made for runongpu-1.0.1.tar.gz:

Publisher: publish.yml on MashrafeeAryan/RunOnGPU

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

File details

Details for the file runongpu-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: runongpu-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for runongpu-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0816fdf6066ce521a105313aed18898e8711755f680ab22bb74687785fdb217f
MD5 137d9af8e0bb4a7ada51ea0af096dde8
BLAKE2b-256 9015d4b089e41ba8f09e3a05ea178aca41cf740e7fb0ce9b7645212da87a9c2a

See more details on using hashes here.

Provenance

The following attestation bundles were made for runongpu-1.0.1-py3-none-any.whl:

Publisher: publish.yml on MashrafeeAryan/RunOnGPU

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