La scalabilité horizontale et les architectures élastiques (c'est ça aussi le cloud actuel) c'est quand même assez formidable pour améliorer la consommation :
on utilise un paquet de petites machines plutôt qu'une grosse et on sait mieux gérer la consommation de ses bêtes là que de gros mastodontes ;
Je suis vraiment pas convaincu pas ça, et j'aimerais bien avoir des références de cas pratiques pour lesquels ça marche vraiment. Genre je voudrais bien voir un passage d'une architecture basée sur du x86 vers une architecture basée sur de l'ARM qui a apporté un gain en consommation et avec des besoins en calcul non triviaux (pour faire du NAS, j'imagine que ça marche bien). "ARM ça consomme moins", ça me paraît être un poncif qu'on répète souvent mais qui ne se vérifie pas dans le contexte du datacenter.
Certes, je veux bien admettre qu'il soit plus facile de gagner en consommation en éteignant de petites machines ARM inutilisées qu'on downclockant ou jouant avec les sleep states d'un gros processeur x86 (et encore...).
Reste que faut arrêter d'imaginer que 4 processeurs à 1Ghz en réseau, c'est équivalent à 1 processeur à 4Ghz. Ce n'est pas le cas. Dire ça, c'est oublier l'impact des caches, des latences mémoires et réseaux, des débits mémoire et réseaux et tout un tas d'autres problèmes. Ne serait-ce parce qu'on passe d'un espace mémoire partagé à des espaces mémoires cloisonnées.
Bref, je pense qu'il faut bien 200 Raspberry Pi pour remplacer un Core i5 chargé à 20%. Pas sur qu'on y gagne en consommation. Sans compter que ça amène à dupliquer les cartes réseaux, les alims et les périphériques de stockage, donc multiplier la consommation des éléments qui ne sont pas des processeurs. Pas sur non plus qu'on arrive à égaler la performance du Core i5. C'est sur que si le Core i5 ne fait rien, on peut aisément le remplacer par un ARM (e.g. NAS, dédibox ou kimsufi de particulier qui dort 90% du temps et qui n'est jamais chargé à plein).
Pour Facebook, la solution (pour l'instantà c'est d'employer des ingénieurs à optimiser aux petits oignons leur code et faire tourner ça sur trouzemille serveurs x86, pas d'utiliser de l'ARM.
Bref, non la scalabilité horizontale, c'est pas terrible pour la consommation. Vaut mieux probablement scaler verticalement dans la plupart des cas pour obtenir une conso basse. On fait de la scalabilité horizontale parce qu'on a pas le choix (au bout d'un moment, c'est compliqué de scaler verticalement, j'attends toujours mon Xeon avec 1000 cœurs à 17Ghz :))
[^] # Re: Amazon, Azure, Google, ...
Posté par X345 . En réponse au journal I had a dream : des pingouins verts !. Évalué à 6. Dernière modification le 31 décembre 2014 à 15:25.
Je suis vraiment pas convaincu pas ça, et j'aimerais bien avoir des références de cas pratiques pour lesquels ça marche vraiment. Genre je voudrais bien voir un passage d'une architecture basée sur du x86 vers une architecture basée sur de l'ARM qui a apporté un gain en consommation et avec des besoins en calcul non triviaux (pour faire du NAS, j'imagine que ça marche bien). "ARM ça consomme moins", ça me paraît être un poncif qu'on répète souvent mais qui ne se vérifie pas dans le contexte du datacenter.
Certes, je veux bien admettre qu'il soit plus facile de gagner en consommation en éteignant de petites machines ARM inutilisées qu'on downclockant ou jouant avec les sleep states d'un gros processeur x86 (et encore...).
Reste que faut arrêter d'imaginer que 4 processeurs à 1Ghz en réseau, c'est équivalent à 1 processeur à 4Ghz. Ce n'est pas le cas. Dire ça, c'est oublier l'impact des caches, des latences mémoires et réseaux, des débits mémoire et réseaux et tout un tas d'autres problèmes. Ne serait-ce parce qu'on passe d'un espace mémoire partagé à des espaces mémoires cloisonnées.
Bref, je pense qu'il faut bien 200 Raspberry Pi pour remplacer un Core i5 chargé à 20%. Pas sur qu'on y gagne en consommation. Sans compter que ça amène à dupliquer les cartes réseaux, les alims et les périphériques de stockage, donc multiplier la consommation des éléments qui ne sont pas des processeurs. Pas sur non plus qu'on arrive à égaler la performance du Core i5. C'est sur que si le Core i5 ne fait rien, on peut aisément le remplacer par un ARM (e.g. NAS, dédibox ou kimsufi de particulier qui dort 90% du temps et qui n'est jamais chargé à plein).
Pour Facebook, la solution (pour l'instantà c'est d'employer des ingénieurs à optimiser aux petits oignons leur code et faire tourner ça sur trouzemille serveurs x86, pas d'utiliser de l'ARM.
Bref, non la scalabilité horizontale, c'est pas terrible pour la consommation. Vaut mieux probablement scaler verticalement dans la plupart des cas pour obtenir une conso basse. On fait de la scalabilité horizontale parce qu'on a pas le choix (au bout d'un moment, c'est compliqué de scaler verticalement, j'attends toujours mon Xeon avec 1000 cœurs à 17Ghz :))