Bailey-Borwein-Plouffe-formlen, som giver mulighed for at udtrække et hvilket som helst hexadecimalt eller binært ciffer af pi uden at beregne de foregående (den nuværende rekord blev sat ved hjælp af Chudnovsky-algoritmen, se nedenfor)
Google Compute Engine-computerklyngen beregnede det største antal cifre i pi på 121 dage på 25 virtuelle maskiner og satte dermed en ny verdensrekord: 31,4 billioner decimaler. Det er første gang, at offentligt tilgængelig cloud-software er blevet brugt til at beregne pi af denne størrelsesorden.
Rekorden vil blive indehavet af Emma Haruka Iwao fra Googles afdeling for højtydende databehandling. Det var hende, der brugte Google Cloud-infrastruktur til databehandling. Den tidligere verdensrekord blev sat af Peter Trueb i 2016, som beregnede tallet til 22,4 billioner cifre. , som også blev sponsoreret af arbejdsgiveren.
Ligesom Trub brugte Google-ingeniøren y-cruncher til beregningen. Dette program bruger , en hurtig algoritme til beregning af tallet pi. Tilbage i 80'erne, vi selv Med dens hjælp beregnede de en milliard decimaler.
Algoritmen er til gengæld baseret på egenskaben om hurtig konvergens af den hypergeometriske række:
Emma Haruka Iwao blev fascineret af det "magiske" tal efter at have lært om det i matematiktimen i skolen. Wired. På universitetet havde en af hendes professorer, Daisuke Takahashi, rekorden for flest cifre i et tal beregnet ved hjælp af en supercomputer. I dag kan rekorden sættes af næsten enhver interesseret ingeniør, der har adgang til seriøse computerressourcer og stor disklagring (til lagring af beregningsresultater). Programmet blev oprettet i 2009 er designet til at beregne matematiske konstanter såsom pi. Den understøtter massiv multithreading og billioner af intervaller. Dette program kommodificerede effektivt beregningen af konstanter.
"Man skal bruge en ret stor computer for at slå en verdensrekord," siger Iwao. "Det kan man ikke gøre på en computer, man har købt i en butik, så folk plejede at bygge specialbiler." I september 2018 begyndte Iwao at undersøge, hvordan beregningsprocessen teknisk set ville fungere i et område uden for rekordintervallet. Det stod straks klart, at det største problem ville være mængden af data, der skulle lagres. Som følge heraf viste det sig, at det beregnede resultat optager 170 terabyte. I stedet for at bygge en brugerdefineret server ligesom sine forgængere, brugte pigen Google Cloud-infrastruktur.
Iwao konfigurerede 25 virtuelle maskiner: "Men i stedet for at trykke på den virtuelle maskine-knap 25 gange, automatiserede jeg det," forklarer hun. "Du kan gøre det på et par minutter, men hvis du har brug for så mange computere, vil det tage dage at sætte det hele op." Iwao kørte derefter y-cruncher kontinuerligt på disse 121 virtuelle maskiner i 25 dage.
For at beregningerne kunne være korrekte, skulle de virtuelle maskiner køre konstant. Ingeniøren oprettede et overvågningssystem, der ville advare hende, hvis noget gik galt, såsom et pludseligt nedbrud på en af de virtuelle maskiner. Blot én fejl – selv i et par minutter – kunne have bragt hele computerprocessen i fare, hvis det ikke var for sikkerhedskopien.
"Cruncher og Google Cloud har backup-systemer, og jeg har konfigureret dem, så du øjeblikkeligt kan lave kopier af disse diske uden at afbryde din computerdrift," siger Iwao. Disse data blev derefter kopieret og gemt eksternt på andre diske som snapshots.
"I begyndelsen var der et par parametre, jeg ændrede, såsom hvor meget data man kunne læse eller skrive ad gangen, og hvordan grænserne ændrede sig, efterhånden som man blev større," siger Iwao.
Efterhånden som antallet af cifre steg, blev filstørrelsen større, og kompleksiteten af beregningerne steg ikke-lineært. Dette gjorde de indledende beregninger meget vanskelige, da Iwao forsøgte at beregne, hvor meget virtuel maskinkapacitet hun ville have brug for til projektet.
Nu er både beregningerne og verifikationen af resultatet færdige: y-cruncher har to grundlæggende algoritmer indbygget - en til at beregne selve pi og en til verifikation. Verifikationsalgoritmen fungerer parallelt med beregningen, men beregner kun ét ciffer, så posten officielt kan registreres.
I teorien kunne en ny verdensrekord sættes ved blot at tage den forrige fil og anvende Bailey-Borwein-Plouffe-formlen til at beregne et andet tal. Men dette ville bestemt være i strid med reglerne for registrering af sådanne verdensrekorder: højst sandsynligt ville hver ansøger skulle starte beregningen forfra. Alternativt kan den tidligere præstation forbedres med N%, hvilket ikke er muligt ifølge Bailey-Borwein-Plouffe-formlen.
Kilde: www.habr.com
