Skip to main content

Distributed torch training using horovod and slurm

Project description

Python Project Template

This is a quickstart project template for Python that already comes attached with the following features:

  • Packaging and metadata support
  • Formatting and linting via pre-commit, black, usort, and flake8
  • Testing via pytest
  • CI via github-actions

Configuration

To tailor this template to your needs, the following steps must be taken:

  1. Rename the myproject package folder to your project name
  2. Change metadata and project name in setup.cfg.
  3. Do not forget to change the version attribute to point to your new package name as well.
  4. Add dependencies to requirements.txt
  5. Adjust the LICENSE file to your liking.
  6. Adjust this README.md file to your liking.

Formatting and linting

Install pre-commit and pytest via

pip install -r ci_requirements.txt

To format and lint the entire codebase run:

pre-commit run --all-files

To perform this step automatically during each commit (and fail on errors) run:

pre-commit install

Testing

To run the tests execute:

pytest

in the top-level directory. Tests can also be executed individually by running them as regular python script. This requires you to add a small main function to them, c.f. test/test_myproject.py.

Github Actions

This project defines the following workflows:

  1. run_linting.yml will run pre-commit run --all-files on every push to develop and pull request
  2. run_tests.yml will run pytest on Windows, Ubuntu, and MacOS on every push to develop and pull_request
  3. release_public.yml and release_test.yml can be triggered manually to build a wheel distribution and publish it to PyPI or TestPyPI respectively

For the publising to work, you need to add the PyPI API token as Github secrets:

  • PYPI_TOKEN for the official PyPI index
  • TEST_PYPI_TOKEN for the TestPyPI index

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

dmlcloud-0.1.1-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file dmlcloud-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: dmlcloud-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for dmlcloud-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4c3f1d05a2c3735d36ca3d1b0d54de6093fdcd2b259ca7eb6e5576b6e4239a42
MD5 9d1f86670fc3838796036125c6816b82
BLAKE2b-256 dbc97d919307919a61c668321e7d5b68f187ddeece1c830f4f9278b298859cc3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page