Skip to main content

Turbine

A Python 3 tool to harness the google cloud to run shell scripts. In particular, if you have

  1. a docker image and
  2. many independent, idempotent tasks for that image written as shell scripts,

Turbine allows you to run those tasks on many VMs in parallel on GCE. See this jupyter notebook for detailed usage.

Turbine is a lot like

  • Google Cloud Run except you don't need to hit an HTTP endpoint and it supports large machine types and accelerators;
  • Google Cloud Functions except it supports large machine types and accelerators; and
  • Batch on GKE except I understand it, it is significantly lighter-weight than Kubernetes, and it provides a path for TPU access.

Installation

Turbine consists of two components:

  1. A controller on the local machine to setup cloud components, enter tasks, and provision VMs.
  2. A small shim to run inside of the docker image and retrieve tasks.

For most users, the recommended method to install the controller is via pip:

pip install turbine

To attach turbine to a docker image, simply install turbine on the image via pip:

RUN pip install turbine

Note that the ENTRYPOINT of the docker image will be overwritten when used by the Turbine controller.

Dependencies:

  • google-cloud-pubsub
  • google-cloud-storage
  • google-cloud-logging
  • google-api-python-client

See requirements.txt for detailed version information, if needed.

Release files for turbine 1.3.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for turbine 1.3.4
File Size Uploaded
turbine-1.3.4.tar.gz 11.6 kB Details

Release files / turbine-1.3.4.tar.gz

Download URL turbine-1.3.4.tar.gz
Size 11.6 kB
Tags Source
SHA-256 checksum
How to use checksums
df8d0818613a429141823c38fdd870f56b1207632e3e5bac0dc9ab71f4d90c4d
BLAKE2b-256 checksum
How to use checksums
e3b9b3d9d0658c54b3ec24572a98f444f5641b071581da3a488c6b1fd2c138e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.6.9

Release history Release notifications | RSS feed

This release

1.3.4 This release

1 release file

1.3.3

1 release file

1.3.2

1 release file

1.3.1

1 release file

1.3.0

1 release file

1.2.0

1 release file

1.1.0

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page