La formule Bailey-Boruane-Pluff, qui vous permet d'extraire n'importe quel chiffre hexadécimal ou binaire spécifique du nombre pi sans calculer les précédents (l'enregistrement actuel a été défini sur l'algorithme Chudnovsky, voir sous la coupe)Pendant 121 jours, le cluster de calcul Google Compute Engine sur 25 machines virtuelles a calculé le plus grand nombre de chiffres du nombre de pi, établissant un nouveau record du monde: 31,4 billions de décimales. C'est la première fois qu'un logiciel de cloud public est utilisé pour calculer pi de cette ampleur.
L'enregistrement sera enregistré au nom d'Emma Haruka Iwao de la division informatique haute performance de Google. C'est elle qui a utilisé l'infrastructure Google Cloud pour l'informatique. Le précédent record du monde a été établi par Peter Trump en 2016, il a calculé le nombre jusqu'à 22,4 billions de chiffres
sur un serveur spécialement conçu , également parrainé par l'employeur.
Comme Trub, un ingénieur de Google a utilisé y-cruncher pour calculer. Ce programme utilise
l'algorithme Chudnovsky , un algorithme rapide pour calculer le nombre pi. Dans les années 80, les
frères Chudnovsky eux-mêmes ont calculé avec son aide un milliard de décimales.
À son tour, l'algorithme est basé sur la propriété de convergence rapide de la série hypergéométrique:

Emma Haruka Iwao a été emportée par le numéro «magique», apprenant cela dans un cours de mathématiques à l'école,
écrit Wired . À l'université, l'un de ses professeurs, Daisuke Takahashi, était le détenteur du record du nombre de chiffres calculés à l'aide d'un superordinateur. Aujourd'hui, presque tout ingénieur intéressé qui a accès à de sérieuses ressources informatiques et à un grand stockage sur disque (pour stocker le résultat des calculs) peut établir un record. Créé en 2009, le programme
y-cruncher est conçu pour calculer des constantes mathématiques, telles que pi. Il prend en charge des gammes massives de multithreading et de milliards de milliards. Ce programme a en fait banalisé les calculs constants.
"Vous avez besoin d'un assez gros ordinateur pour battre le record du monde", explique Iwao. "Il ne sera pas possible de le faire sur l'ordinateur depuis le magasin, donc les gens construisaient des voitures personnalisées." En septembre 2018, Iwao a commencé à examiner comment le processus de calcul fonctionnerait techniquement dans une plage en dehors de la plage record. Il est immédiatement devenu clair que le principal problème serait la quantité de données à stocker. En conséquence, il s'est avéré que le résultat calculé prenait 170 téraoctets. Au lieu de créer un serveur personnalisé, comme ses prédécesseurs, la jeune fille a utilisé l'infrastructure Google Cloud.

Iwao a récupéré 25 machines virtuelles: «Mais au lieu d'appuyer sur ce bouton sur la machine virtuelle 25 fois, je l'ai automatisée», explique-t-elle. «Vous pouvez le faire en quelques minutes, mais si vous avez besoin d'autant d'ordinateurs, il faudra plusieurs jours pour tout configurer.» Iwao a ensuite géré le y-cruncher sur ces 25 machines virtuelles en continu pendant 121 jours.
Pour que les calculs soient corrects, les machines virtuelles devaient fonctionner en continu. L'ingénieur a installé un système de surveillance qui la préviendrait en cas de problème, par exemple en cas de panne soudaine sur l'une des machines virtuelles. Un seul accident - même pendant quelques minutes - pourrait compromettre l'ensemble du processus informatique, sinon pour la sauvegarde.
«Il y a des systèmes de sauvegarde dans le cruncher et Google Cloud, et je les ai configurés pour que vous puissiez instantanément prendre des copies de ces disques sans arrêter le calcul», explique Iwao. Ces données ont ensuite été copiées et stockées en externe, sur d'autres disques, sous forme d'instantanés.
«Au début, j'ai modifié plusieurs paramètres, par exemple, la quantité de données que vous pouviez lire ou écrire à la fois, et la façon dont les limites changeraient à mesure que vous augmentiez», explique Iwao.
À mesure que le nombre de chiffres augmentait, la taille du fichier devenait plus grande et la complexité de calcul augmentait de façon non linéaire. Cela a grandement compliqué le calcul initial lorsque Iwao a essayé de déterminer de quelle ressource de machines virtuelles elle aurait besoin pour le projet.
Les calculs et la vérification du résultat sont maintenant terminés: deux algorithmes de base sont intégrés dans le y-cruncher - l'un pour calculer le pi lui-même et l'autre pour le vérifier. L'algorithme de vérification fonctionne en parallèle avec le calcul, mais ne calcule qu'un seul chiffre, afin que l'enregistrement puisse être enregistré officiellement.
Théoriquement, un nouveau record du monde peut être établi si vous prenez simplement le fichier précédent et appliquez la formule Bailey - Borwain - Pluff pour calculer un autre nombre. Mais cela contredit certainement les règles d'enregistrement de ces records du monde: très probablement, chaque candidat doit recommencer le calcul. En option: améliorer la réussite précédente de N%, ce qui, selon la formule Bailey - Borwain - Pluff, ne peut pas être fait.