AIDGE IN SPACE
Banc d'essai de compression d'image apprise pour l'embarqué
Chargement...
Recherche...
Aucune correspondance
Référence de l'espace de nommage aidge_in_space.jobs

File d'attente SQLite des entraînements (JobStore) : jobs, métriques et battements de cœur des workers. Plus de détails...

Classes

class  Job
 Un job d'entraînement tel que stocké dans la base. Plus de détails...
class  JobStore
 Accès à la base des jobs d'entraînement (une connexion par opération). Plus de détails...

Fonctions

Job _row_to_job (sqlite3.Row row)
 Convertit une ligne de la table jobs en Job.
bool _is_number (v)
 Indique si une valeur est un nombre réel (bool exclu).
int _max_run_id (Path ckpt_dir)
 Plus grand N des checkpoints bls2017_*_run{N}.pt d'un dossier.

Variables

 EXIT_DONE
 Codes de retour de python -m aidge_in_space.train.
 EXIT_FAILED
 Codes de retour de python -m aidge_in_space.train.
 EXIT_CONFIG
 Codes de retour de python -m aidge_in_space.train.
 EXIT_CANCELLED
 Codes de retour de python -m aidge_in_space.train.
 EXIT_STOPPED
 Codes de retour de python -m aidge_in_space.train.
tuple STATUSES = ("queued", "running", "done", "failed", "cancelled", "interrupted")
 Statuts internes (ASCII).
dict STATUS_LABELS
 Libellés affichés.
tuple FINAL_STATUSES = ("done", "failed", "cancelled", "interrupted")
 Statuts finaux qu'un job peut recevoir de finish().
tuple REQUEUE_FROM = ("failed", "cancelled", "interrupted")
 Statuts depuis lesquels requeue() est permis.
str DB_NAME = "runs.sqlite"
 Nom du fichier de base dans RUNS_DIR.
int SCHEMA_VERSION = 1
 Version du schéma (PRAGMA user_version).
int BUSY_TIMEOUT_S = 30
 Délai d'attente (secondes et millisecondes) sur une base verrouillée par un autre processus.
int MAX_ERROR_CHARS = 4000
 Longueur maximale (caractères) du message d'erreur d'un job.
tuple METRIC_KINDS = ("train", "eval")
 Types de métriques acceptés.
str _SCHEMA
 Schéma SQL, créé dans une transaction BEGIN IMMEDIATE si user_version vaut 0.

Description détaillée

File d'attente SQLite des entraînements (JobStore) : jobs, métriques et battements de cœur des workers.

Bibliothèque standard uniquement. Trois acteurs se partagent la base : l'interface (soumission, annulation, relance), le worker (prise des jobs, statut final) et le processus d'entraînement (progression, métriques).

Choix du journal DELETE (et non WAL) : la base peut vivre sur un dossier monté depuis Windows dans un conteneur Docker, où la mémoire partagée exigée par le mode WAL et les verrous de fichiers ne sont pas fiables. Pour compenser, chaque opération ouvre sa propre connexion (timeout et busy_timeout de 30 s), les écritures sont de courtes transactions BEGIN IMMEDIATE, et toutes les requêtes sont paramétrées.

Documentation des fonctions

◆ _is_number()

bool aidge_in_space.jobs._is_number ( v)
protected

Indique si une valeur est un nombre réel (bool exclu).

Paramètres
vValeur à tester.
Renvoie
Vrai pour un int ou un float qui n'est pas un bool.

◆ _max_run_id()

int aidge_in_space.jobs._max_run_id ( Path ckpt_dir)
protected

Plus grand N des checkpoints bls2017_*_run{N}.pt d'un dossier.

Paramètres
ckpt_dirDossier des checkpoints (peut ne pas exister).
Renvoie
Le plus grand N trouvé, 0 s'il n'y en a pas.

◆ _row_to_job()

Job aidge_in_space.jobs._row_to_job ( sqlite3.Row row)
protected

Convertit une ligne de la table jobs en Job.

Paramètres
rowLigne SQLite (accès par nom de colonne).
Renvoie
Le Job correspondant.