HPC & IA
projects/sendland
HPC & IA

SenLand

Cartographie de l'occupation des sols du Sénégal par deep learning — un même code exécuté sur CPU et GPU pour comparer honnêtement les deux moteurs de calcul.

PythonPyTorchJAXCUDAOpenMPHPCDeep LearningGeospatialBenchmark

À propos du projet

SenLand est le volet appliqué de la Gray Scott School (CINERI / EuroCC) : un pipeline de deep learning qui cartographie l'occupation des sols (eau, cultures, forêt, bâti, mangroves…) à partir d'imagerie satellite ouverte, et qui exécute le même code source sur CPU et sur GPU pour comparer les deux moteurs de calcul de façon rigoureuse. Développé de bout en bout sur un simple laptop (Intel i5-10300H, GTX 1650). Le projet couvre la classification (EuroSAT, 91,8 % de précision), la segmentation sémantique sur 4 zones du Sénégal (mIoU 0,62 avec un encodeur ResNet-34 pré-entraîné ImageNet), un benchmark à charge fixe (strong scaling CPU 1→4 cœurs : 54→117 img/s, GPU : 466 img/s) et un portage complet en JAX/Flax pour comparer non plus seulement les moteurs mais les frameworks (PyTorch vs JAX, jit/fusion, torch.compile). Toutes les figures et métriques sont reproductibles et versionnées.

Fonctionnalités clés

  • Un seul code source, deux moteurs : CPU (OpenMP, strong scaling 1→4 cœurs) et GPU (SIMT/CUDA)
  • Classification EuroSAT (10 classes, from scratch) — 91,8 % de précision de validation
  • Segmentation sémantique de 4 zones du Sénégal (U-Net ResNet-34) — mIoU 0,62, spatial holdout
  • Benchmark à charge fixe : CPU 54→117 img/s (1→4 threads), GPU 466 img/s
  • Portage JAX/Flax (jit, fusion lax.fori_loop, donate_argnums) pour comparer frameworks à modèle identique
  • Données ouvertes (ESA WorldCover, Sentinel-2 cloudless), runs reproductibles, scaffolding Slurm/Apptainer

Démo

aniasse/senland

$ git clone https://github.com/aniasse/senland.git

Cloning into 'senland'...

remote: Enumerating objects: done.

$ cdsenland

$ cat README.md

# SenLand

Cartographie de l'occupation des sols du Sénégal par deep learning — un même code exécuté sur CPU et GPU pour comparer honnêtement les deux moteurs de calcul.

Infos du projet

LangagePython
CatégorieHPC & IA
Repositorysenland
Stack
PythonPyTorchJAXCUDAOpenMPHPCDeep LearningGeospatialBenchmark

Voir le code source

github.com/aniasse/senland

/
Adama.

Software Engineer basé au Sénégal. Spécialisé en Go, Rust, Cloud-DevOps, Cybersécurité et calcul haute performance (HPC/GPU). Passionné par les systèmes distribués et les architectures performantes.

Stack

  • Go
  • Rust
  • TypeScript
  • Vue / Nuxt
  • Python · HPC
  • Docker / K8s

Status

Disponible

Ouvert aux missions freelance, postes CDI et collaborations open source.

Me contacter

© 2026 Adama Niasse. Tous droits réservés.

Dakar, Sénégal