A high-performance data loading library for JAX
Project description
JAX DataLoader
A high-performance data loading library for JAX, designed for efficient data loading and preprocessing in machine learning workflows.
Features
- Efficient data loading with automatic batching
- Multi-GPU support with automatic batch distribution
- Memory management with automatic batch size tuning
- Support for various data formats (CSV, JSON, Images)
- Progress tracking and statistics
- Data caching and prefetching
- Error handling and recovery
Installation
pip install jax-dataloader
Quick Start
from jax_dataloader import JAXDataLoader, DataLoaderConfig
# Create a DataLoader configuration
config = DataLoaderConfig(
batch_size=32,
num_workers=4,
multi_gpu=True
)
# Load your data
dataloader = JAXDataLoader(
data_path="path/to/your/data",
config=config
)
# Iterate over batches
for batch_x, batch_y in dataloader:
# Process your batch
...
Examples
The package includes comprehensive examples demonstrating various features:
# Clone the repository
git clone https://github.com/yourusername/jax-dataloader.git
cd jax-dataloader
# Install example dependencies
pip install -r examples/requirements.txt
# Run the data loading demo
cd examples/data_loading
python demo.py
The examples demonstrate:
- Loading different data formats (CSV, JSON, Images)
- Multi-GPU support
- Memory management
- Progress tracking
- Batch size optimization
For more examples and detailed documentation, visit our documentation.
Documentation
For detailed documentation, including API reference and advanced usage examples, visit our documentation.
Contributing
We welcome contributions! Please see our contributing guide for details.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Project Structure:
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jax-dataloaders-0.1.1.tar.gz.
File metadata
- Download URL: jax-dataloaders-0.1.1.tar.gz
- Upload date:
- Size: 62.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e481956356ef0e36baec26437addb839043f825760f910f9832a23e0e49918ca
|
|
| MD5 |
e53d594beca33e9889966a36faba9e0d
|
|
| BLAKE2b-256 |
10efdb1359377287d2f34ab2d6fc905d05c7f0c93cf6d18720490d544a03aef1
|
File details
Details for the file jax_dataloaders-0.1.1-py3-none-any.whl.
File metadata
- Download URL: jax_dataloaders-0.1.1-py3-none-any.whl
- Upload date:
- Size: 19.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
997d1b1a0baeb22094b35fd0ea9c3972dacedab1ca46593d4b3cad50f7e3f9b0
|
|
| MD5 |
7179d640c15a5489741597379a35db0b
|
|
| BLAKE2b-256 |
e3809b99c7737f70a14e7896fe3ab959614818995aa9ced3afc0f035210952e8
|