Brevet FR3076005A1 (20190628)

REVENDICATIONS1. Procédé de commande d'une grappe de serveurs (4), la grappe (4) comprenant plusieurs noeuds (6), caractérisé en ce que : - des agents automatisés (14) mesurent l'évolution d'au moins une métrique quantifiant l'utilisation des noeuds (6) pour l'exécution d'une application, - les agents (14) déterminent pour chaque noeud (6) si un changement de phase a eu lieu dans l'application exécutée au moyen de la mesure de la métrique et le cas échéant commandent un changement de fonctionnement du noeud (6), - un coordinateur automatisé (16) agrège, à intervalles réguliers, les mesures de métrique et les changements de fonctionnement des noeuds (6) qui ont eu lieu, et - en fonction des mesures agrégées, le coordinateur (16) envoie des instructions à au moins un des agents (14).\n<CLM>\1\tProcédé selon la revendication précédente, dans lequel, avant de déterminer si 15 un changement de phase a eu lieu, chaque agent (14) compare la valeur de la métrique mesurée à une ou plusieurs valeurs de seuil prédéterminées.\n<CLM>\1\tProcédé selon la revendication précédente, dans lequel on modifie dynamiquement les valeurs de seuil prédéterminées en fonction de l'impact d'un changement de fonctionnement des noeuds (6) commandés par les agents (14). 20\n<CLM>\1\tProcédé selon l'une quelconque des revendications précédentes, dans lequel la métrique est choisie parmi la liste constituée de la consommation énergétique instantanée des noeuds, le nombre d'instructions par cycle de processeur exécutées par des coeurs de calcul (8) des noeuds, la quantité de lectures et/ou d'écritures dans des systèmes de fichiers effectuées par les noeuds, et le nombre d'octets envoyés et/ou 25 reçus sur un réseau par les noeuds.\n<CLM>\1\tProcédé selon l'une quelconque des revendications précédentes, dans lequel le changement de fonctionnement est choisi parmi la liste constituée de la modification du point de fonctionnement (fréquence ; tension électrique) des coeurs de calcul, la désactivation des coeurs de calcul (8) des noeuds sans charge de travail, et la 30 modification de l'attribution des tâches aux coeurs de calcul (8).\n<CLM>\1\tProcédé selon l'une quelconque des revendications précédentes, dans lequel la commande du changement de fonctionnement des noeuds (6) par les agents (14) prend en compte des modèles de prédiction, prédéterminés, d'une performance des noeuds et/ou d'une énergie consommée par les noeuds. 35\n<CLM>\1\tProcédé selon l'une quelconque des revendications précédentes, dans lequel le coordinateur (16) agrège toutes les dix à trente secondes les mesures de métrique et les changements de fonctionnement des noeuds (6), de préférence toutes les quinze - 14 - secondes.\n<CLM>\1\tProcédé selon l'une quelconque des revendications précédentes, dans lequel les données envoyées par les agents (14) au coordinateur (16) comprennent une liste des séquences de phases rencontrées par les noeuds, des statistiques sur les mesures de 5 valeurs de la métrique, des informations sur une performance des noeuds, et/ou des informations sur une consommation énergétique des noeuds.\n<CLM>\1\tProcédé selon la revendication précédente, dans lequel le coordinateur (16) interroge les agents (14) tour à tour, par exemple selon le modèle « round-robin unicast ». 10\n<CLM>\1\tProcédé selon l'une quelconque des revendications précédentes, dans lequel le coordinateur (16) détermine, en fonction des mesures agrégées, si la consommation d'énergie globale de la grappe de serveurs (4) a augmenté ou baissé, et si la consommation d'énergie de chacun des noeuds (6) a augmenté ou baissé.\n<CLM>\1\tProcédé selon l'une quelconque des revendications précédentes, mis en oeuvre 15 dans le cadre d'un calcul haute performance.\n<CLM>\1\tProgramme d'ordinateur, comprenant des instructions de code aptes à commander la mise en oeuvre des étapes d'un procédé selon l'une quelconque des revendications précédentes lorsqu'il est exécuté sur un ordinateur.\n<CLM>\1\tProcédé de mise à disposition du programme de la revendication précédente en 20 vue de son téléchargement sur un réseau de télécommunications.\n<CLM>\1\tDispositif de commande (12) d'une grappe de serveurs (4), caractérisé en ce qu'il est apte à: - mesurer l'évolution d'au moins une métrique quantifiant l'utilisation de noeuds (6) de la grappe de serveurs (4) pour l'exécution d'une application, 25 - déterminer pour chaque noeud (6) au moyen de la mesure de la métrique si un changement de phase a eu lieu dans l'application exécutée et le cas échéant commander un changement de fonctionnement du noeud (6), - agréger, à intervalles réguliers, les mesures de métrique et les changements de fonctionnement des noeuds (6), et 30 - en fonction des mesures agrégées, envoyer des instructions de changement de fonctionnement aux noeuds (6).\n<CLM>\1\tSystème comprenant un dispositif de commande (12) selon la revendication précédente et une grappe de serveurs (4).