Skip to main content

Iterative HPC function development. As many 'first tries' as you need.

Project description

Home of hog ☀️🦫🕳️

Groundhog Logo

Quickstart

Groundhog makes it easy to run, tweak, and re-run python functions on HPC clusters via Globus Compute using simple decorators.

Groundhog automatically manages remote environments (powered by uv)—just update Python versions or dependencies in your script, no SSH needed.

Key concepts:

  • @hog.function() - Configures a function to run on a Globus Compute endpoint. Decorator kwargs (like endpoint, account) become the default user_endpoint_config.
  • @hog.harness() - Marks a local entry point that orchestrates remote calls via .remote() or .submit().
  • The desired remote Python environment (version and dependencies) is specified alongside your code via PEP 723 metadata.
# /// script
# requires-python = ">=3.12,<3.13"
# dependencies = [
#     numpy,
# ]
#
# [tool.hog.tutorial]  # Globus Compute Tutorial Endpoint
# endpoint = "4b116d3c-1703-4f8f-9f6f-39921e5864df"
#
# ///

import groundhog_hpc as hog

@hog.function(endpoint='tutorial') # points to [tool.hog.tutorial] config
def compute(x: int) -> int:
    import numpy as np
    return int(np.sum(range(x)))

@hog.harness()
def main():
    result = compute.remote(100)
    print(result)

Run with: hog run myscript.py main


see also: examples

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

groundhog_hpc-0.7.4.tar.gz (38.5 kB view details)

Uploaded Source

Built Distribution

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

groundhog_hpc-0.7.4-py3-none-any.whl (53.4 kB view details)

Uploaded Python 3

File details

Details for the file groundhog_hpc-0.7.4.tar.gz.

File metadata

  • Download URL: groundhog_hpc-0.7.4.tar.gz
  • Upload date:
  • Size: 38.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for groundhog_hpc-0.7.4.tar.gz
Algorithm Hash digest
SHA256 a906c45053af34884bafdb3c56d61b7c7f19c29cd118d346971b834fc3c174f9
MD5 e4a6fbd1308d8259ce834e03a0fa2a5f
BLAKE2b-256 c09f4d20a08e8c8f1759a3df05b8816b725f1429d2aee8452c2f0273ecca9d4d

See more details on using hashes here.

File details

Details for the file groundhog_hpc-0.7.4-py3-none-any.whl.

File metadata

  • Download URL: groundhog_hpc-0.7.4-py3-none-any.whl
  • Upload date:
  • Size: 53.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for groundhog_hpc-0.7.4-py3-none-any.whl
Algorithm Hash digest
SHA256 5d3e48587d1df6cfa71b30fbbf944b852dd37a2883262a3cbc6160a7e5a65b4d
MD5 359d9e571d33eb9b7c7119255164069e
BLAKE2b-256 257f5cf1597dd3311b57bc60dba22f12b7d494fb34eac08577206b6493223cad

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