Skip to main content

Internal S3 client implementation for s3torchconnector

Project description

Amazon S3 Connector for PyTorch

The Amazon S3 Connector for PyTorch delivers high throughput for PyTorch training jobs that access or store data in Amazon S3. Using the S3 Connector for PyTorch automatically optimizes performance when downloading training data from and writing checkpoints to Amazon S3, eliminating the need to write your own code to list S3 buckets and manage concurrent requests.

Amazon S3 Connector for PyTorch provides implementations of PyTorch's dataset primitives that you can use to load training data from Amazon S3. It supports both map-style datasets for random data access patterns and iterable-style datasets for streaming sequential data access patterns. The S3 Connector for PyTorch also includes a checkpointing interface to save and load checkpoints directly to Amazon S3, without first saving to local storage.

Getting Started

Prerequisites

  • Python 3.8 or greater is installed (Note: Using 3.12+ is not recommended as PyTorch does not support).
  • PyTorch >= 2.0 (TODO: Check with PyTorch 1.x)

Installation

pip install s3torchconnector

Amazon S3 Connector for PyTorch supports pre-build wheels via Pip only for Linux and MacOS for now. For other platforms, see DEVELOPMENT for build instructions.

Configuration

To use s3torchconnector, AWS credentials must be provided through one of the following methods:

  • If you are using this library on an EC2 instance, specify an IAM role and then give the EC2 instance access to that role.
  • Install and configure awscli and run aws configure.
  • Set credentials in the AWS credentials profile file on the local system, located at: ~/.aws/credentials on Unix or macOS.
  • Set the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables.

Examples

API docs are showing API of the public components. End to end example of how to use s3torchconnector can be found under the examples directory.

Sample Examples

The simplest way to use the S3 Connector for PyTorch is to construct a dataset, either a map-style or iterable-style dataset, by specifying an S3 URI (a bucket and optional prefix) and the region the bucket is located in:

from s3torchconnector import S3MapDataset, S3IterableDataset

# You need to update <BUCKET> and <PREFIX>
DATASET_URI="s3://<BUCKET>/<PREFIX>"
REGION = "us-east-1"

iterable_dataset = S3IterableDataset.from_prefix(DATASET_URI, region=REGION)

# Datasets are also iterators. 
for item in iterable_dataset:
  print(item.key)

# S3MapDataset eagerly lists all the objects under the given prefix 
# to provide support of random access.  
# S3MapDataset builds a list of all objects at the first access to its elements or 
# at the first call to get the number of elements, whichever happens first.
# This process might take some time and may give the impression of being unresponsive.
map_dataset = S3MapDataset.from_prefix(DATASET_URI, region=REGION)

# Randomly access to an item in map_dataset.
item = map_dataset[0]

# Learn about bucket, key, and content of the object
bucket = item.bucket
key = item.key
content = item.read()
len(content)

In addition to data loading primitives, the S3 Connector for PyTorch also provides an interface for saving and loading model checkpoints directly to and from an S3 bucket.

from s3torchconnector import S3Checkpoint

import torchvision
import torch

CHECKPOINT_URI="s3://<BUCKET>/<KEY>/"
REGION = "us-east-1"
checkpoint = S3Checkpoint(region=REGION)

model = torchvision.models.resnet18()

# Save checkpoint to S3
with checkpoint.writer(CHECKPOINT_URI + "epoch0.ckpt") as writer:
    torch.save(model.state_dict(), writer)

# Load checkpoint from S3
with checkpoint.reader(CHECKPOINT_URI + "epoch0.ckpt") as reader:
    state_dict = torch.load(reader)

model.load_state_dict(state_dict)

Using datasets or checkpoints with Amazon S3 Express One Zone directory buckets requires only to update the URI, following base-name--azid--x-s3 bucket name format. For example, assuming the following directory bucket name my-test-bucket--usw2-az1--x-s3 with the Availability Zone ID usw2-az1, then the URI used will look like: s3://my-test-bucket--usw2-az1--x-s3/<PREFIX> (please note that the prefix for Amazon S3 Express One Zone should end with '/'), paired with region us-west-2.

Distributed checkpoints

Overview

Amazon S3 Connector for PyTorch provides robust support for PyTorch distributed checkpoints. This feature includes:

  • S3StorageWriter and S3StorageReader: Implementations of PyTorch's StorageWriter and StorageReader interfaces.
  • S3FileSystem: An implementation of PyTorch's FileSystemBase.

These tools enable seamless integration of Amazon S3 with PyTorch Distributed Checkpoints, allowing efficient storage and retrieval of distributed model checkpoints.

Prerequisites and Installation

PyTorch 2.3 or newer is required. To use the distributed checkpoints feature, install S3 Connector for PyTorch with the dcp extra:

pip install s3torchconnector[dcp]

Sample Example

End-to-end examples for using distributed checkpoints with S3 Connector for PyTorch can be found in the examples/dcp directory.

from s3torchconnector import S3StorageWriter, S3StorageReader

import torchvision
import torch.distributed.checkpoint as DCP

# Configuration
CHECKPOINT_URI = "s3://<BUCKET>/<KEY>/"
REGION = "us-east-1"

model = torchvision.models.resnet18()

# Save distributed checkpoint to S3
s3_storage_writer = S3StorageWriter(region=REGION, path=CHECKPOINT_URI)
DCP.save(
    state_dict=model.state_dict,
    storage_writer=s3_storage_writer,
)

# Load distributed checkpoint from S3
model = torchvision.models.resnet18()
model_state_dict = model.state_dict()
s3_storage_reader = S3StorageReader(region=REGION, path=CHECKPOINT_URI)
DCP.load(
    state_dict=model_state_dict,
    storage_reader=s3_storage_reader,
)
model.load_state_dict(model_state_dict)

Parallel/Distributed Training

Amazon S3 Connector for PyTorch provides support for parallel and distributed training with PyTorch, allowing you to leverage multiple processes and nodes for efficient data loading and training. Both S3IterableDataset and S3MapDataset can be used for this purpose.

S3IterableDataset

The S3IterableDataset can be directly passed to PyTorch's DataLoader for parallel and distributed training. By default, all worker processes will share the same list of training objects. However, if you need each worker to have access to a unique portion of the dataset for better parallelization, you can enable dataset sharding using the enable_sharding parameter.

dataset = S3IterableDataset.from_prefix(DATASET_URI, region=REGION, enable_sharding=True)
dataloader = DataLoader(dataset, num_workers=4)

When enable_sharding is set to True, the dataset will be automatically sharded across available number of workers. This sharding mechanism supports both parallel training on a single host and distributed training across multiple hosts. Each worker, regardless of its host, will load and process a distinct subset of the dataset.

S3MapDataset

For the S3MapDataset, you need to pass it to DataLoader along with a DistributedSampler wrapped around it. The DistributedSampler ensures that each worker or node receives a unique subset of the dataset, enabling efficient parallel and distributed training.

dataset = S3MapDataset.from_prefix(DATASET_URI, region=REGION)
sampler = DistributedSampler(dataset)
dataloader = DataLoader(dataset, sampler=sampler, num_workers=4)

Lightning Integration

Amazon S3 Connector for PyTorch includes an integration for PyTorch Lightning, featuring S3LightningCheckpoint, an implementation of Lightning's CheckpointIO. This allows users to make use of Amazon S3 Connector for PyTorch's S3 checkpointing functionality with Pytorch Lightning.

Getting Started

Installation

pip install s3torchconnector[lightning]

Examples

End to end examples for the Pytorch Lightning integration can be found in the examples/lightning directory.

from lightning import Trainer
from s3torchconnector.lightning import S3LightningCheckpoint

...

s3_checkpoint_io = S3LightningCheckpoint("us-east-1")
trainer = Trainer(
    plugins=[s3_checkpoint_io],
    default_root_dir="s3://bucket_name/key_prefix/"
)
trainer.fit(model)

Using S3 Versioning to Manage Checkpoints

When working with model checkpoints, you can use the S3 Versioning feature to preserve, retrieve, and restore every version of your checkpoint objects. With versioning, you can recover more easily from unintended overwrites or deletions of existing checkpoint files due to incorrect configuration or multiple hosts accessing the same storage path.

When versioning is enabled on an S3 bucket, deletions insert a delete marker instead of removing the object permanently. The delete marker becomes the current object version. If you overwrite an object, it results in a new object version in the bucket. You can always restore the previous version. See Deleting object versions from a versioning-enabled bucket for more details on managing object versions.

To enable versioning on an S3 bucket, see Enabling versioning on buckets. Normal Amazon S3 rates apply for every version of an object stored and transferred. To customize your data retention approach and control storage costs for earlier versions of objects, use object versioning with S3 Lifecycle.

S3 Versioning and S3 Lifecycle are not supported by S3 Express One Zone.

Contributing

We welcome contributions to Amazon S3 Connector for PyTorch. Please see CONTRIBUTING for more information on how to report bugs or submit pull requests.

Development

See DEVELOPMENT for information about code style, development process, and guidelines.

Compatibility with other storage services

S3 Connector for PyTorch delivers high throughput for PyTorch training jobs that access or store data in Amazon S3. While it may be functional against other storage services that use S3-like APIs, they may inadvertently break when we make changes to better support Amazon S3. We welcome contributions of minor compatibility fixes or performance improvements for these services if the changes can be tested against Amazon S3.

Security issue notifications

If you discover a potential security issue in this project we ask that you notify AWS Security via our vulnerability reporting page.

Code of conduct

This project has adopted the Amazon Open Source Code of Conduct. See CODE_OF_CONDUCT.md for more details.

License

Amazon S3 Connector for PyTorch has a BSD 3-Clause License, as found in the LICENSE file.

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

s3torchconnectorclient-1.3.0.tar.gz (60.4 kB view details)

Uploaded Source

Built Distributions

s3torchconnectorclient-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

s3torchconnectorclient-1.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

s3torchconnectorclient-1.3.0-cp312-cp312-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

s3torchconnectorclient-1.3.0-cp312-cp312-macosx_10_13_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.12 macOS 10.13+ x86-64

s3torchconnectorclient-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

s3torchconnectorclient-1.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

s3torchconnectorclient-1.3.0-cp311-cp311-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

s3torchconnectorclient-1.3.0-cp311-cp311-macosx_10_9_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

s3torchconnectorclient-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

s3torchconnectorclient-1.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

s3torchconnectorclient-1.3.0-cp310-cp310-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

s3torchconnectorclient-1.3.0-cp310-cp310-macosx_10_9_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

s3torchconnectorclient-1.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

s3torchconnectorclient-1.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

s3torchconnectorclient-1.3.0-cp39-cp39-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

s3torchconnectorclient-1.3.0-cp39-cp39-macosx_10_9_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

s3torchconnectorclient-1.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.9 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

s3torchconnectorclient-1.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.7 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

s3torchconnectorclient-1.3.0-cp38-cp38-macosx_11_0_arm64.whl (2.1 MB view details)

Uploaded CPython 3.8 macOS 11.0+ ARM64

s3torchconnectorclient-1.3.0-cp38-cp38-macosx_10_9_x86_64.whl (2.2 MB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file s3torchconnectorclient-1.3.0.tar.gz.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0.tar.gz
Algorithm Hash digest
SHA256 acf8f23aeb12f856520a5358b64546289fc8888fec2272b00b4a2cdcd413fda9
MD5 6bbacd6df3ba07f7a9f9486206f5f204
BLAKE2b-256 477d730b805893293a6799e97f3cddc66ac19a4bbb852d8b35557454529461e7

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 50431eca2adda7ff9e60df805abb7b83b6a0569975e6c7f53ac10d66ea383b66
MD5 f6c705609264aa4bca9d50c98c39520f
BLAKE2b-256 7a4e6bfd8c9d9f0a1d6c0b73385504a4b7e33ec960f383f9c1107fa9156f0fc0

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e9eee7f906325c88e93ae9925abbba63bd66c2e7c502dd091cbacb864c6179f6
MD5 f7be5fdc488c2ccc853228d338dfb063
BLAKE2b-256 c017d1637f85fa401b0ad0aa90b07bca119ab9c76344257cad78574017549f2b

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3a8ede48d372913be782cc0e4c6f3c845e3adab82a6f130c97b6288a2fcdff7c
MD5 bc8594446f5c0a4392d58ce0215ceaba
BLAKE2b-256 0de5044c5e34f94a565e7f16a0060a60ef268ac3edb343ca8630194ee65a04a4

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b5e2a99f0153a6b4638f4a3dd7808ac6cd805a5662e731cb94ed430276478331
MD5 ebf639046f5e86b1c0398e446e04c5d2
BLAKE2b-256 73174d857d95020b6da60cfebc80f867d1cf2925b611806d9e390646c024a084

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8b66be3c20fe15835c90a445dc553e680af482632fc1a21b8cbf11758f1c2b29
MD5 7e2b6132f4d6082b65c116c6d1737726
BLAKE2b-256 7260af3d20a6ee57ad149e7177ad0d43a5dac8838273e96cda09c61fc8b9864e

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f25b7ae118e1bb1e9a1dea2ff0b9655c8c1f448485b0a2718e74138b6b49c29f
MD5 196ce8153906d9263f4dbb8647c0a7aa
BLAKE2b-256 1fd8beb485c41574b91bf0b19a7f4a16098ab2f54fb864afe960554337bbf4f8

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 938638a497ac82435c2e6c4ce28d26468aa4ea7c93b67e744cc3b3b1e122dee3
MD5 860926c20d17c785def60c66825f21bd
BLAKE2b-256 fada600edf62a5f79fbe1b2377150acbc724a0c8e9128347def2e6cfa56a92e3

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a3332788451f913429ffdc3961b5852d081aba83168b3b7eadd2f464288be572
MD5 530a68248ebb77b27004dce43fb1e9ac
BLAKE2b-256 ab3dbf6dbc94ffbafa30565bf6434084cb387268c0e3e8204860fcf9d0a79180

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1b82d330f6badd6ed552ef8c3acfdcab27072f458dd5296339c3b053a5ca1736
MD5 6e9e5fec4614ce1108cd95ffbd6d1f5a
BLAKE2b-256 3b081697da126f4a0623dd82a42edadec51372c0067eab91a1f09f5aaf5ffd88

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bffccaa1077b20a01420735ed8a8ba108e0858e989ab296452dd8ce88e02dfb6
MD5 543c72623d21a4ce9d037d240a6acc47
BLAKE2b-256 0f907a65c257f34ce7d53e3bfd33c7160cfa44f83cb3ede02d140c073cd957d7

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 735f8de5bbe97c0dc883e50e0a73d4c20bfbb14436b6ec6be68d1d14d35f25eb
MD5 02bba4946bc000e196ac3e7fb41e8005
BLAKE2b-256 5bae41556c23ab1fdc6e67c70e2b1ce47dc4e0c324c88c3fd3aa2680f9e597f8

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 838a571d588acb387b333bc30e1fac6e299c3ee442af87eb157b59aa3dfc416f
MD5 b263873d72f23abc9941065e33f141bb
BLAKE2b-256 de91b40448e1df149d385e1b622b1e98ab3e17d4951548a795949172f45592d7

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1bea9b0658e69c3b966f919fc715e5e11b11f84e9de15f074fbd1ab0bb63b1b5
MD5 ab86f90788b8cf277fb9e4cbc45e40aa
BLAKE2b-256 69d5ac8474e6e757582b997ab519af3a90c3f87620bf7aa5070da887d41d25d4

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5229c9adecf78ff2ae0b338f1e01193b322661672c3a27df8816c3a584ae055e
MD5 ecad9f5b68b89d6c16988378b8bd606c
BLAKE2b-256 26beb5aa07e640fc4ce440662f2c196b680e340361eba375ae8bd0d18856bf60

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 653445c59229e2bfd5c6c42a77937f71ba88741090b64783c2a4a6514785d7fc
MD5 4d022c900c890f9ef4662c9c8b410219
BLAKE2b-256 a2d1ce56408261022048f81cf08512cb05c002eefa1db54018e6dbb95f8009bf

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 18ca3e7a4fddaabbc7cc65c89deee45aaf6576adf23a7ee74408778a2ac8a5f8
MD5 6c7c53ce23e136dc8de3242cbd3bb13a
BLAKE2b-256 4c0c9c04d5880127395a55a6e5e710416bfb973dc1b1dd140fbdaf35334c425d

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8af40c03fe379652adae32f6e1bb21925f15e93f82c6b0dee7fec92fca12d900
MD5 0846934e2dbf3372f5833dbe36d9da4a
BLAKE2b-256 f2ac8478e3b1a891540a144feb3e69309b948bbedbae8fe65529a230622585e9

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5fc4e3ac5144876cc893f4d755e5967d7f83f865594d27853540e5f650a97c67
MD5 4038a8f1e8c2761bea858069d9558302
BLAKE2b-256 27b90cb5eb704634d18fdf00a4325fd1de9b0ad1de30e5e89fab5e9b8431ea51

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 53fdb98e4239513104362792efc35ceb0cef943e0cc6b82b534bd79cd6f33675
MD5 219dcfc80b1449b228c9c561382b66cb
BLAKE2b-256 0a5dcd52a6e9119647d686cf247f2bdc84ce9efe1deb0ce1623254f7a7f2132e

See more details on using hashes here.

File details

Details for the file s3torchconnectorclient-1.3.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for s3torchconnectorclient-1.3.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 db5ab2e0348713f6cf0c58ab7fc66077aed6139f4d4a06da92b35319b7fe96bf
MD5 b843bb2ac0c3cb8c7a3458ec99a94794
BLAKE2b-256 ae98a20721b09581b4c2201ea6121bd926e0278da11865a69bf468d7e0e7da0a

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