Plier dans les nuages avec vast.ai
#1
Hello

Je viens de publier, sur le site de l'AF, ce dossier complet pour "Plier dans les nuages" avec vast.ai : https://www.alliancefrancophone.org/dossiers/gpu-cloud/

Comme insisté ("lourdement", diront certains) dans l'introduction et dans d'autres topics de ce forum, à chacun de faire ses calculs en fonction de sa situation et son contexte pour savoir si "ça vaut le coup" .


Également, je vous propose un outil qui permet de comparer la production et coûts des GPU (personnels ou loués via vast.ai ) pour Folding@home : https://www.alliancefrancophone.org/comparoGPU/


Cependant il n'est ni parfait, ni exhaustif ! En effet, il est impossible de faire un outil complet qui prendra en compte tous les contextes individuels et environnementaux : carte graphique achetée récemment ou non, tarif de l'électricité, localisation du PC, tolérance au bruit et à la chaleur dégagée, climatisation ou non à votre domicile, "pliage" 24h/24 ou non, type de recherche à effectuer, autre utilisation que Folding@home sur le PC (jeux, montage vidéo, etc.) , ...
Il se focalise donc sur le coût de la consommation électrique théorique en charge et les tarifs VAST.AI pour le type de carte sélectionnée, ainsi que quelques autres hypothèses connues (ou que vous pouvez adapter en choisissant "<personnalisée>" dans la liste déroulante)

Comme indiqué précédemment, c'est à vous de faire le "bon" choix en complétant, avec votre situation, les débuts de réponse fournis par l'outil.

Bonne lecture, et si vous avez des questions/remarques/corrections, sur le guide ou l'outil , n'hésitez pas à utiliser cette discussion !


Et merci à Gnomuz pour le tuto initial il y a qq années,  un grand merci à Gtev pour l'inspiration et la version simplifiée pour le client F@H V8, ainsi qu'aux relecteurs (DK, Thor, EmpireHell, j'espère ne pas en oublier !) qui ont permis de finaliser ce guide.
Répondre
#2
Très intéressant, merci !

Pour quelqu'un comme moi qui n'a qu'un client V7 'local', pas de token donc = le template FAH que tu pointes dans la doc n'est pas utilisable dans l'état ?

Dans ce cas à moi de me monter un template V7 que je configure de zéro ?

D'ailleurs (pour le template de la V8), ce n'est pas risqué de donner un token sur ces machines cloud ?
Répondre
#3
Comme indiqué dans le guide, tu n'a pas besoin de client local (V7 ou V8) pour utiliser l'interface web V8 : il te suffit d'aller à l'adresse https://v8-4.foldingathome.org/
Et suivre les instructions de : https://www.alliancefrancophone.org/doss...loud-02-02 pour créer un compte f@h v8(*) & récupérer le token
(*) Ce compte ne sert qu’a se connecter à des clients distants, et à accéder à certains réglages.

Il n'y aura bien sûr aucune machine listée puisque tu n'as pas de client V8 configuré avec ton compte v8/token.

Tu pourras ensuite dérouler la suite du guide avec le template & le client V8 (et garder ton client V7 localement).

Concernant le risque lié au token : comme il ne sert qu'à automatiser la configuration du client V8 , je ne pense pas  qu'il y ait grand risque.
Le seul risque serait que qq'un (ayant accès à l'instance cloud, ou à "ton" template sur vast.ai) le récupere et l'utilise pour configurer "son" client f@h pour qu'il plie sur ton compte , avec ta passkey Smile
Intérêt limité, donc Wink
Répondre
#4
Thumbs Up 
OK compris merci  Super
Répondre
#5
Ça ne fonctionne pas très bien sur Safari sur macOS.
Je vais voir sur firefox si ce la passe mieux.
--------------------------------
@+, Kana-chan.
[Image: ?name=%5BZebulon.fr%5D_Kana-chan][Image: ?name=Kana-chan]
Répondre
#6
(08-08-2025 21:25:57)Maeda a écrit : OK compris merci  Super
Je viens de voir ton message sur le forum officiel et le pb de création de "compte" f@h V8 avec ton username qui a ">"
Je pense qu'on peut contourner le souci (mais tu ne pourras pas monitorer depuis l'url web du client f@h) .
Je te confirme ça sous peu.
Répondre
#7
Donc, si motivé, voici un mode op. pour faire tourner F@h v8 sous Vast.ai , quand on a un username avec ">" ou autre caractere non supporté  qui empêche de créer un "compte" F@h V8 (pour utiliser l'interface web pour le monitoring / récupération du token)

Modification du template

Dans le template , dans les "Environment Variables" :
- supprimez la variable d'environnement FAH_ACCOUNT_TOKEN
- gardez FAH_AUTOSTART à true
- ajoutez une variable d'environnement FAH_USERNAME avec comme valeur votre username (ex: [AF>Libristes]Maeda )
- ajoutez une variable d'environnement FAH_TEAM avec comme valeur 51
- ajoutez une variable d'environnement FAH_PASSKEY avec comme valeur votre passkey
(ne pas oublier d'appuyer sur le "+"  pour réellement ajouter la variable Smile )

Toujours dans le template , dans la partie "On Start Script" ("Bash commands [...]")
- remplacez la première ligne (et uniquement la première ligne !)  :
Code :
curl https://raw.githubusercontent.com/firedfly/fah-v8-scripts/main/fah-onstart.sh -o fah-onstart.sh
par
Code :
curl https://raw.githubusercontent.com/JWhyFR/fah-v8-scripts/refs/heads/main/fah-onstart.sh -o fah-onstart.sh
J'ai modifié le script pour autoriser l'utilisation d'un username "legacy" , avec les caractères à présent "interdits", dont ">"  (et 2-3 autres trucs Wink )

La suite du guide est inchangé et si vous louez une instance avec ce template, ça "devrait" lancer F@h configuré avec vos info.


Monitoring et pilotage de F@h

Pas d'interface web pour piloter le client, donc il va falloir mettre (un peu) les mains dans le cambouis...
Pour commencer, il faudra ouvrir un shell unix sur la machine, depuis votre navigateur

Depuis la "carte" de l'instance, cliquez sur le bouton "Jupyter" :
[Image: dossier_gpu-cloud-xx_jupyter-00.png]

Dans la fenêtre qui s'ouvre après qq secondes, allez dans le menu "View" pour sélectionner "Open JupyterLab"
[Image: dossier_gpu-cloud-xx_jupyter-01.png]

Dans la nouvelle fenêtre qui s'ouvre, cliquez sur
[Image: dossier_gpu-cloud-xx_jupyter-02.png]

Cela ouvrira un shell unix et vous pourrez piloter le client F@h avec l'outil  "lufah" installé :
[Image: dossier_gpu-cloud-xx_jupyter-03.png]

Les commandes de lufah sont documentées ici : https://github.com/kbernhagen/lufah/?tab...file#usage

Les principales à connaitre sont :
  • state : pour afficher la configuration du client (notamment pour voir si votre compte est bien configuré) et autres infos utiles.
    [Image: dossier_gpu-cloud-xx_jupyter-04.png]

  • finish : pour terminer une WU avant de détruire l'instance Vast.
    [Image: dossier_gpu-cloud-xx_jupyter-05.png]

  • fold : pour lancer le pliage (généralement non nécessaire, démarrage automatique à la création de l'instance Vast.)

  • pause : pour arrêter le pliage  (généralement non nécessaire, on utilisera plutôt "finish" avant de détruire l'instance)
Répondre
#8
Hebe
Pour du tuto pour mon cas (qui au passage me gêne surtout sur le fait de ne pas savoir si j'ai le bonus comme les autres), c'est du détaillé ! Merci Super !
Je préfère ne pas avoir d'interface graphique pour piloter, je suis déjà habitué à avoir un terminal ouvert avec mon script qui me donne les infos pour voir que ça tourne bien.

Je finis mes tests sur vast avec le client V7 (j'avais gardé mes notes pour la V8), et pour la suite je retenterai peut-être la V8. D'après leur réponse sur le forum je peux garder la V7 sans souci (vu que je gère déjà sur de la V7, c'est plus simple pour moi).

Note : j'avais pensé creuser la piste du config.xml de la V7 (qui marche pour moi [au passage il transforme le caractère > par &gt;] posé dans le dossier spécifique et d'après ce que j'ai lu, la V8 irait lire ce fichier de la V7 pour alimenter sa configuration [dans son client.db]. Je n'ai pas essayé ça encore, ta procédure semblant pas mal du tout, je testerai la tienne.
Répondre
#9
Hello,

Pour ma part je fais le test et je ne trouve pas cela vraiment concluant.
Ce matin entre 7h et 12h, le client ne m'a trouvé aucune WU. Je redémarre le container et là il me trouve direct une WU.
S'il faut être les yeux rivés sur le site de suivi de ses WU pour en avoir .. cela n'est pas pratique.
--------------------------------
@+, Kana-chan.
[Image: ?name=%5BZebulon.fr%5D_Kana-chan][Image: ?name=Kana-chan]
Répondre
#10
Juste deux questions :
Avec les options FAH_ il n'est pas possible de faire en sorte de mettre un numéro de PK (project key) à la création d'instance ?
Et aussi, pour les projets en bêta ... il n'y a pas une option à mettre à la création du container pour avoir aussi les projets en bêta ?

Ce serait bien d'avoir cette information dans le tutoriel en fait ... Big Grin
--------------------------------
@+, Kana-chan.
[Image: ?name=%5BZebulon.fr%5D_Kana-chan][Image: ?name=Kana-chan]
Répondre





Utilisateur(s) parcourant ce sujet : 1 visiteur(s)