Skip to main content

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


Download files

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

Source Distribution

verisnap-0.1.1.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

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

verisnap-0.1.1-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

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

Hashes for verisnap-0.1.1.tar.gz
Algorithm Hash digest
SHA256 698b4c3f8f055e983a925e012a93aea27236140a1b910cd81c6c19b0389acb8b
MD5 373f22e4d9493388ac467e4b9e775ac8
BLAKE2b-256 04f010f4c8e5b150b60abb5ca72102393f0f6e2390effc28eca5aeac23641757

See more details on using hashes here.

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

Hashes for verisnap-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 230e35d38254c22386aca2ab9203e5dd4b375d47d79ce7af2e80d5bf1f038cdb
MD5 62a636b6754b014385f80e24d035d63c
BLAKE2b-256 c58d84c09cce2bdadd6a95db8be95fbf3c5af4ebc2a705b9ed0f677f0a17db13

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