Metadata-Version: 2.4
Name: tunefit
Version: 0.1.0
Summary: Preflight-check whether a machine can train an AI workload before the run starts.
Author: Arda Erdogan
License-Expression: MIT
Project-URL: Homepage, https://github.com/erdoganxarda/my-portfolio
Project-URL: Repository, https://github.com/erdoganxarda/my-portfolio
Project-URL: Issues, https://github.com/erdoganxarda/my-portfolio/issues
Keywords: ai,machine-learning,deep-learning,training,cuda,mps
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Operating System :: OS Independent
Classifier: Environment :: Console
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

# TuneFit

**TuneFit is the preflight check for AI training.**

TuneFit predicts whether a local machine can train a target AI workload before the real run starts.

It is built for the point before a profiler helps and before a failed training run wastes time.

## What TuneFit Does

- scans the local machine and runtime
- estimates whether a workload is trainable on that machine
- predicts peak VRAM, host RAM, and rough step time
- returns `PASS`, `WARN`, or `FAIL`
- points to likely bottlenecks
- suggests the next change to try

## Why It Exists

Many training runs fail too late:

- out-of-memory on the first step
- unsupported CUDA, MPS, or precision combinations
- framework and driver mismatches
- technically valid runs that are too slow to be useful

TuneFit moves that answer forward.

## Quick Example

```bash
tunefit scan --output system.json
tunefit estimate --spec workload.yaml --system system.json
```

Typical output:

```text
TuneFit verdict: PASS
Target: mps on Apple Silicon Integrated GPU
Peak VRAM: 824.0 MB
Peak RAM: 563.2 MB
Step time: 215.4 ms
Throughput: 1188.59 tokens/sec
```

## Current Scope

- CLI-first
- local-only
- CPU, NVIDIA CUDA, and Apple MPS
- PyTorch-first validation
- CNN and transformer workload templates

## Commands

- `tunefit scan`
- `tunefit estimate`
- `tunefit validate`
- `tunefit calibration list`
- `tunefit calibration prune`

## Source And Documentation

- Source: https://github.com/erdoganxarda/my-portfolio
- Product spec: https://github.com/erdoganxarda/my-portfolio/blob/main/docs/spec_v1.md
- Architecture: https://github.com/erdoganxarda/my-portfolio/blob/main/docs/architecture.md

## Notes

TuneFit is intentionally lightweight and heuristic. It is designed to improve preflight decisions, not to replace a real profiler or guarantee exact runtime behavior for arbitrary custom training code.
