Une vérité qui fâche : nos piles IA basées sur CUDA ont été conçues par des gens qui optimisent des équations, pas du matériel. Les data scientists maîtrisent les maths ; les ingénieurs systèmes maîtrisent la mémoire. Quand j’instrumente des charges de travail réelles, environ 55 % du temps réel n’est pas du tout consacré à « faire de l’IA » — ça s’évapore dans des mouvements de données évitables et des blocages de synchronisation. L’IA n’est pas lente parce que les modèles sont gros ; elle est lente parce qu’on a traité la mémoire comme un détail.
Sporkle, c’est ma quatrième tentative pour régler le problème : traiter l’ensemble comme un problème de gestion de périphériques d’abord, et de calcul ensuite. Orchestrer proprement la mémoire, les durées de vie et les transferts entre périphériques avec une seule API ; laisser les maths s’appuyer sur un pipeline cohérent. Quand on centre la mémoire, la pile arrête de vous combattre et les performances surgissent partout.
Pourquoi Fortran
Je l’ai écrit dans un nouveau dialecte Fortran assez sympa, parce que la sémantique des tableaux et les formes explicites permettent au compilateur de générer du code impitoyable tout en gardant un modèle mémoire évident. Pensez « do concurrent », procédures pures, tableaux à formes explicites, foulées prévisibles et interopérabilité ISO C quand c’est nécessaire. Ça se lit comme des maths, ça se comporte comme un système, et ça supprime la soupe de pointeurs qui rend le code « rapide » fragile et opaque.
Les mesures
Les preuves — avant même que le support NVIDIA n’arrive : les chemins CPU de production atteignent ~90–160 GFLOPS ; un backend de calcul OpenGL basique dépasse les 400 GFLOPS ; le pipeline asynchrone à triple tampon (avec barrières) cumule ~3 630 GFLOPS. Les gros noyaux voient leur latence chutée d’environ 6,5× dans le pipeline ; les petits noyaux limités par la mémoire gagnent toujours ~2,3× en débit en gardant les données chaudes et les lancements sains. Sous charge, le cache de programme thread-safe affiche même un « overhead négatif », atteignant ~124,5 % d’efficacité parallèle grâce aux lectures sans verrou et aux artefacts partagés.
🧩 Aujourd’hui, ça tourne sur AMD, en envoyant du vrai travail sans la poudre de perlimpinpin des SDK constructeurs ; NVIDIA et Intel sont pour la suite. La thèse est agnostique au périphérique : réparez le mouvement des données et les gains apparaissent sur tout ce qui a de la RAM et des lignes.
🖥️ Et parce que c’est important : chaque chiffre ci-dessus a été produit sur mon Ryzen 7 de trois ans, ma config gaming tout AMD. Pas un serveur de datacenter. Pas de matériel exotique. Juste de l’ingénierie système disciplinée.
⚡ Pourquoi s’y intéresser ? Une empreinte minimale réduite pour une IA utile. De la vitesse sans avoir besoin de plus grosses machines. Moins de watts par token/frame/échantillon. Des harnais reproductibles, de vraies traces, du code de niveau recherche. Réparez la couche périphérique et les maths s’envolent.
Actuellement en Alpha2