- Plusieurs startups et laboratoires de recherche achètent conjointement un cluster de GPU afin de mutualiser les ressources de calcul nécessaires à l’entraînement de grands modèles
- Au lieu d’acheter chacun N GPU séparément, K startups se regroupent pour acheter ensemble un cluster de taille N×K
- Un job scheduler répartit équitablement le calcul au prorata des parts détenues, et alloue en plus les capacités inutilisées lorsqu’il y en a
- Plutôt que de remplir 128 A100 pendant tout un mois, il devient possible de burster sur 512 A100 pendant une semaine, afin d’entraîner les modèles plus vite
- Une structure qui rend accessible aux startups le mode d’allocation en burst dont ne bénéficiaient jusque-là que de grands laboratoires comme OpenAI ou Deepmind
Idée principale
- Au lieu que K startups achètent chacune un cluster de N GPU, elles achètent ensemble un cluster de GPU de taille N×K
- Mise en place d’un job scheduler pour répartir équitablement le calcul au prorata des parts détenues par chaque startup
- Si de la capacité de calcul reste inutilisée, le scheduler l’alloue telle quelle ; avec un peu de chance, il est donc possible d’utiliser plus de calcul que sa part
- Plutôt que de maintenir 128 A100 occupés en continu pendant un mois, il est possible de burster jusqu’à 512 A100 pendant une semaine pour obtenir un modèle plus rapidement
- Les grands laboratoires comme OpenAI ou Deepmind disposent de grands clusters permettant des allocations en burst pour leurs chercheurs
- À l’inverse, les startups n’avaient jusqu’ici accès qu’à de tout petits clusters via des contrats de très longue durée, devaient attendre plusieurs mois et les maintenir constamment occupés
- Objectif : appliquer l’allocation en burst et les contrats courts tout en visant environ 2,00 $ par H100
- Les startups intéressées peuvent remplir le formulaire de candidature ; pour toute question, envoyer un e-mail à evan@roomservice.dev
Rejoindre, quitter et étendre
- Comme dans une hacker house, pour quitter le cluster (par exemple afin de construire son propre cluster), il faut prévenir un ou deux mois à l’avance afin que la place puisse être remplacée par quelqu’un d’autre
- Les nouvelles startups sont ajoutées au groupe par lots (batch), avec l’ajout de nouveaux H100 au cluster tous les quelques mois
- Le même principe s’applique aux membres déjà présents dans le groupe qui souhaitent augmenter leur capacité de calcul
- Une légère surallocation (overprovisioning) est envisagée — par exemple, si un ami veut quelques nœuds pour une petite expérimentation, ils peuvent être fournis immédiatement à un bon prix
- Avec 10 % de surallocation, le prix horaire d’un H100 augmente de 10 %
Finances
- Une voie solide a été trouvée pour mettre en service 512 H100 en 4 à 6 semaines
- Si la demande dépasse ce volume, des H100 supplémentaires pourront être obtenus en environ 8 semaines
- De bonnes conditions bancaires permettent d’étaler le coût d’achat du cluster, ce qui rend possible un niveau d’environ 2,00 $ par H100 tout en conservant des contrats courts et l’allocation en burst
Infrastructure
- Partage d’une mailing list/Slack de débogage d’infrastructure ; en cas de problème avec InfiniBand ou autre, il est possible de poser des questions au groupe
- Si quelqu’un a déjà rencontré le même problème, les membres peuvent s’entraider
1 commentaires
Avis de Hacker News
J’espère que ça réussira. TPU Research Cloud (TRC) avait tenté quelque chose de ce genre en 2019, et c’est ce qui m’a permis de me lancer.
En 2023, il est difficile d’obtenir ne serait-ce qu’un TPU pendant plus d’une heure, mais à l’époque on pouvait littéralement en recevoir des centaines. Je croyais au TRC, et je pensais qu’en passant à l’échelle pour créer un continent de TPU, le problème serait résolu ; au final, le temps TPU a été attribué en priorité aux chercheurs internes et a diminué. Le monde a tellement changé qu’aujourd’hui, si vous proposez d’apprendre les échecs à GPT sur des H100, on vous rirait au nez.
Il y a dans ce projet un optimisme de jeunesse que j’espère ne pas voir disparaître, et à long terme c’est peut-être comme ça qu’on gagne. Si quelqu’un vient demander un tout petit fragment de H100 pour une idée farfelue, j’espère qu’on l’acceptera. C’est la seule raison pour laquelle j’ai pu devenir quelque chose.
Et bien sûr, nous comptons accepter les demandes farfelues pour un petit morceau de H100.
La liste récente des articles soutenus par le TRC est disponible sur https://sites.research.google/trc/publications/
La demande pour Cloud TPU est très forte, donc si vous utilisez de la capacité préemptible, vous pouvez constater des interruptions plus fréquentes, mais de la capacité réservée est également possible. Vous devriez contacter l’équipe de support du TRC.
La comparaison n’est pas parfaitement identique, mais le TRC était très difficile à prendre en main, je n’ai eu accès qu’une seule fois à un TPUv3, et ce n’était même pas assez long pour apprendre les bases. J’ai compris que la situation variait beaucoup selon l’adresse e-mail utilisée et la notoriété du compte Twitter.
Je me demande si vous êtes rattaché au monde académique. Si ce n’est pas le cas, je ne sais pas pourquoi ils ont été plus généreux avec moi, et mes projets étaient au mieux juste un peu intéressants. Cela dit, c’est vrai qu’ils sont beaucoup plus avares qu’avant avec les gros Pods.
« Au lieu que chacune des K startups achète séparément un cluster de N GPU, elles achètent ensemble un cluster de NK GPU et répartissent le calcul avec un ordonnanceur de tâches » ressemble, en théorie, presque au modèle des fournisseurs cloud comme AWS et Azure.
C’est la structure suivante : « au lieu que tout le monde achète individuellement du matériel fixe, nous achetons un énorme pool de matériel et permettons de le partager dans le temps ». À part le fait que les fournisseurs cloud doivent augmenter les prix pour préserver leur marge nette, je me demande ce qui manque encore au point de rendre ce projet nécessaire.
Premièrement, les investisseurs des clouds publics attendent une certaine structure de marges, ce qui rend difficile de rivaliser avec les marges de Lambda ou Fluidstack. Deuxièmement, les grands clouds sont aussi, dans une certaine mesure, désavantagés côté réseau pour l’entraînement de grands modèles de langage. À ma connaissance, seul Azure dispose d’InfiniBand ; Oracle est à 3200 Gbit/s mais ce n’est pas de l’InfiniBand, et je pense qu’AWS est similaire. Je ne suis pas sûr pour GCP, mais je me souviens que la vitesse réseau des A100 y était de 100 Gbit/s, pas 1600 Gbit/s. En revanche, Lambda, Fluidstack et CoreWeave ont tous de l’InfiniBand. Troisièmement, Nvidia n’alloue pas aux grands clouds autant de volume qu’ils le voudraient.
Deuxièmement, il y a ici un problème fondamental de partage des ressources. Même dans ce projet d’Evan et AI Grant, la question se pose : si une équipe a l’argent pour occuper tout le cluster en continu, pourquoi l’en empêcher ? Le problème est de définir précisément ce qu’est un usage équitable. Dans les réseaux, il existe des algorithmes de partage de bande passante comme l’équité TCP, mais ils s’adaptent mal à ce type de tâches par blocs.
Dans les prochains mois, AWS et d’autres chercheront à lancer un service de file d’attente permettant d’obtenir temporairement des blocs de calcul, probablement avec paiement à l’avance et coûts élevés. Cela pourrait même coûter plus cher que les tarifs à la demande.
Ils font eux-mêmes cette mutualisation et ne veulent pas céder la relation client ni les profits à un intermédiaire ou aux clients.
Pour avoir exploité de l’infrastructure dans plusieurs colocations en Californie, il vaut mieux la mettre ailleurs si possible. Le coût de l’électricité en Californie et les autres coûts d’infrastructure sont bien plus élevés qu’en Arizona ou au Nevada.
J’ai lu la phrase « aucun fournisseur cloud au monde ne vous donnera pour 100 000 dollars de calcul pendant seulement quelques semaines » ; je n’ai jamais acheté de très gros volumes de calcul, mais je pensais que c’était justement le cœur du cloud.
Je me demande en quoi c’est différent de https://lambdalabs.com/
Aujourd’hui, il est assez facile d’obtenir quelques A100/H100, et Lambda est excellent pour cet usage. Mais obtenir 24 GPU ou plus à un prix raisonnable, autour de 2 dollars de l’heure, est très difficile. Même si vous voulez seulement lancer un entraînement de 8 heures sur H100, on vous demande souvent un engagement de plus de 6 mois.
Pour les intermédiaires en GPU, préférer les réservations longues est une décision logique du point de vue business, et nous ferions probablement pareil à leur place. Mais notre objectif est différent : armer les rebelles. Nous voulons que quelqu’un qui n’est pas BigCorp puisse aussi entraîner des modèles.
L’approche décrite dans le billet ressemble davantage à l’achat du droit de placer des jobs dans la file d’attente d’un cluster de 512 GPU, donc un job nécessitant 256 GPU ne pose pas vraiment problème. Il faudra simplement éventuellement attendre derrière quelqu’un qui lance un job sur 512 GPU.
Je ne sais pas quelle est la capacité réelle de Lambdalabs. Je me demande si quelqu’un sait à quel point il est facile d’y lancer plus de 2 ou 3 instances.
Personnellement, je m’intéresse beaucoup à l’IA et j’y participe depuis plusieurs années, mais je n’ai jamais vu une telle pénurie de GPU. Pour quelqu’un qui veut faire du machine learning en amateur, je recommande vivement vast.ai.
Pour les GPU autres que A100/H100, il y a vast, TensorDock, ainsi que RunPod.
Ils revendent actuellement AWS et GCP, et proposent aussi des A100, mais pour l’instant un T4 suffit.
Je comprends qu’AWS/GCP/Azure aient de l’overhead, et aussi pourquoi beaucoup d’entreprises choisissent le bare metal en production. Personnellement, je pense que le temps et l’effort en valent rarement la peine, mais je conçois qu’à grande échelle les économies puissent être importantes.
Cela dit, si même pour l’entraînement IA les clouds publics ne sont pas compétitifs sur les pics de demande, alors leurs marges sont bien plus élevées qu’on ne l’imaginait. Je me demande à quoi correspond la réduction de coût de 10 à 20 fois mentionnée dans le billet. Par rapport à AWS ?
En tant que personne qui aime SF, je me demande s’il y a quelque chose d’intéressant derrière le nom. Le matériel sera-t-il réellement installé à SF ? Prévoyez-vous d’organiser des meetups ou de réunir les clients pour qu’ils échangent ?
Nous n’avons pas encore disparu comme le Xerces blue, nous existons toujours.
https://en.wikipedia.org/wiki/Xerces_blue
Mais je pense qu’une bonne partie des clients seront par ici. SF reste probablement le meilleur endroit pour créer une startup. Il y a vraiment beaucoup de gens qui résolvent des problèmes techniques difficiles. Dans tous les endroits où j’ai vécu à SF, il y avait une autre startup à l’étage au-dessus ou en dessous.
Organiser des événements en présentiel est aussi une bonne idée.
J’aime l’idée d’un actif communautaire. Est-ce que cela pourrait être le début d’une coopérative de GPU ?
https://cloud.vast.ai/host/setup
Cela pourrait être de l’espace en rack, des VM, des conteneurs, de la connectivité, n’importe quoi. En gros, Twitter régresserait pour devenir un opérateur de colocation comme à la fin des années 90.
Pour ceux qui ne l’auraient pas compris, c’est une blague.
Je me demande comment ils ont trouvé l’argent pour acheter 512 H100.