A tool to create directory snapshots with size-based file copying or symlinking
Project description
VeriSnap
VeriSnap is a Python tool designed to facilitate tracking and managing multiple experiment runs. It creates snapshots of directories, selectively copying or symbolically linking files based on a specified size threshold. This is especially useful in research environments where experiments might contain bugs or need to be rerun, as it provides an easy way to version and manage experiment results without risk of overwriting previous snapshots.
Key Features
- Automatic Versioning: VeriSnap automatically checks the snapshot directory and increments the version number, so you don’t need to worry about overwriting previous experiments.
- Integration with Experiment Tracking: The generated version number can be used within your code to label saved models, and it can be integrated with tools like TensorBoard for logging metrics and results.
- Efficient File Management: Files are either copied or symbolically linked based on a size threshold, optimizing storage space.
Installation
To install VeriSnap, use pip:
pip install verisnap
Usage
from verisnap import make_snapshot
source_dir = '/path/to/source' # Directory containing the experiment results
snapshots_dir = '/path/to/snapshots' # Directory where snapshots will be stored
threshold = 50 # MB, files larger than this will be symbolically linked
version = make_snapshot(source_dir, snapshots_dir, threshold)
# Proceed with your training code...
# You can use the `version` in your code to label saved models or logs.
Project details
Release history Release notifications | RSS feed
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 verisnap-0.1.1.tar.gz.
File metadata
- Download URL: verisnap-0.1.1.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
698b4c3f8f055e983a925e012a93aea27236140a1b910cd81c6c19b0389acb8b
|
|
| MD5 |
373f22e4d9493388ac467e4b9e775ac8
|
|
| BLAKE2b-256 |
04f010f4c8e5b150b60abb5ca72102393f0f6e2390effc28eca5aeac23641757
|
File details
Details for the file verisnap-0.1.1-py3-none-any.whl.
File metadata
- Download URL: verisnap-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
230e35d38254c22386aca2ab9203e5dd4b375d47d79ce7af2e80d5bf1f038cdb
|
|
| MD5 |
62a636b6754b014385f80e24d035d63c
|
|
| BLAKE2b-256 |
c58d84c09cce2bdadd6a95db8be95fbf3c5af4ebc2a705b9ed0f677f0a17db13
|