Klimatmodeller är några av de mest komplexa programvarorna som någonsin skrivits, som kan simulera ett stort antal olika delar av det övergripande systemet, som atmosfären eller havet. Många har utvecklats av hundratals forskare under decennier och läggs ständigt till och förfinas. De kan uppgå till över en miljon rader datorkod – tiotusentals utskrivna sidor.
Inte överraskande är dessa modeller dyra. Simuleringarna tar tid, ofta flera månader, och superdatorerna som modellerna körs på drar mycket energi. Men en ny algoritm som jag har utvecklat lovar att göra många av dessa klimatmodellsimuleringar tio gånger snabbare, och kan i slutändan bli ett viktigt verktyg i kampen mot klimatförändringar.
En anledning till att klimatmodellering tar så lång tid är att vissa av de processer som simuleras är i sig långsamma. Havet är ett bra exempel. Det tar några tusen år för vatten att cirkulera från ytan till djuphavet och tillbaka (däremot har atmosfären en "blandningstid" på veckor).
Ända sedan de första klimatmodellerna utvecklades på 1970-talet insåg forskare att detta skulle bli ett problem. För att använda en modell för att simulera klimatförändringar måste den utgå från förhållanden som är representativa för innan industrialiseringen ledde till utsläpp av växthusgaser i atmosfären.
För att skapa en så stabil jämvikt, "snurrar" forskare upp sin modell genom att i huvudsak låta den köras tills den slutar förändras (systemet är så komplext att, precis som i den verkliga världen, vissa fluktuationer alltid kommer att finnas).
Ett initialt tillstånd med minimal "drift" är väsentligt för att exakt simulera effekterna av mänskliga faktorer på klimatet. Men tack vare havet och andra tröga komponenter kan detta ta flera månader även på stora superdatorer. Inte konstigt att klimatforskare har kallat denna flaskhals för en av de "stora utmaningarna" inom sitt område.
Du kanske frågar, "varför inte använda en ännu större maskin?" Tyvärr skulle det inte hjälpa. Enkelt uttryckt är superdatorer bara tusentals individuella datorchips, var och en med dussintals processorenheter (CPU eller "kärnor") anslutna till varandra via ett höghastighetsnätverk.
En av maskinerna jag använder har över 300 000 kärnor och kan utföra nästan 20 kvadriljoner aritmetiska operationer per sekund. (Självklart delas den av hundratals användare och varje enskild simulering kommer bara att använda en liten bråkdel av maskinen.)
En klimatmodell utnyttjar detta genom att dela upp planetens yta i mindre regioner – underdomäner – med beräkningar för varje region som utförs samtidigt på en annan CPU. I princip gäller att ju fler underdomäner du har desto mindre tid bör det ta att utföra beräkningarna.
Det är sant till en viss punkt. Problemet är att de olika underdomänerna behöver "veta" vad som händer i angränsande sådana, vilket kräver att information överförs mellan chips. Det är mycket långsammare än den hastighet med vilken moderna chips kan utföra aritmetiska beräkningar, vad datavetare kallar "bandbreddsbegränsning". (Alla som har försökt streama en video över en långsam internetanslutning vet vad det betyder.)
Det finns därför minskande avkastning från att kasta mer datorkraft på problemet. Oceanmodeller lider särskilt av så dålig "skalning."
Det är här den nya datoralgoritmen som jag har utvecklat och publicerat i Science Advances kommer in. Det lovar att dramatiskt minska spin-up-tiden för havet och andra komponenter i jordsystemmodeller. I tester på typiska klimatmodeller var algoritmen i genomsnitt cirka tio gånger snabbare än nuvarande metoder, vilket minskade tiden från många månader till en vecka.
Den tid och energi som detta skulle kunna spara klimatforskare är värdefull i sig. Men att snabbt kunna spinna upp modeller innebär också att forskare kan kalibrera dem mot vad vi vet faktiskt hände i den verkliga världen, förbättra deras noggrannhet eller för att bättre definiera osäkerheten i deras klimatprognoser. Spin-ups är så tidskrävande att ingen av dem är möjliga för närvarande.
Den nya algoritmen kommer också att tillåta oss att utföra simuleringar i mer rumslig detalj. För närvarande berättar havsmodeller oss vanligtvis ingenting om egenskaper som är mindre än 1º breda i longitud och latitud (cirka 110 km vid ekvatorn). Men många kritiska fenomen i havet inträffar i mycket mindre skala – tiotals meter till några kilometer – och högre rumslig upplösning kommer säkerligen att leda till mer exakta klimatprognoser, till exempel av havsnivåhöjning, stormfloder och orkanintensitet.
Som så mycket "ny" forskning bygger den på en gammal idé, i det här fallet en som går tillbaka århundraden till den schweiziske matematikern Leonhard Euler. Kallas "sekvensacceleration", du kan tänka dig att använda tidigare information för att extrapolera till en "bättre" framtid.
Bland andra tillämpningar används det i stor utsträckning av kemister och materialforskare för att beräkna strukturen hos atomer och molekyler, ett problem som råkar ta upp mer än hälften av världens superdatorresurser.
Sekvensacceleration är användbar när ett problem är iterativt till sin natur, exakt vad klimatmodellspin-up är:du matar tillbaka utdata från modellen som en input till modellen. Skölj och upprepa tills effekten blir lika med inmatningen och du har hittat din jämviktslösning.
På 1960-talet från Harvard-matematikern D.G. Anderson kom på ett smart sätt att kombinera flera tidigare utdata till en enda ingång så att du kommer till den slutliga lösningen med mycket färre upprepningar av proceduren. Ungefär tio gånger färre som jag hittade när jag tillämpade hans schema på spin-up-problemet.
Att utveckla en ny algoritm är den enkla delen. Att få andra att använda det är ofta den största utmaningen. Det är därför lovande att UK Met Office och andra klimatmodelleringscenter testar det.
Nästa stora IPCC-rapport kommer 2029. Det verkar vara långt kvar, men med tanke på den tid det tar att utveckla modeller och utföra simuleringar är förberedelser redan igång. Samordnat av ett internationellt samarbete känt som Coupled Model Intercomparison Project, är det dessa simuleringar som kommer att ligga till grund för rapporten. Det är spännande att tänka på att min algoritm och mjukvara kan bidra.
Mer information: Samar Khatiwala, Effektiv spin-up av jordsystemmodeller med sekvensacceleration, Science Advances (2024). DOI:10.1126/sciadv.adn2839
Journalinformation: Vetenskapens framsteg
Tillhandahålls av The Conversation
Den här artikeln är återpublicerad från The Conversation under en Creative Commons-licens. Läs originalartikeln.