Det er en kendt sag at hardware-udviklingen følger den såkaldte Moore's lov. Den siger jo at antallet af transistorer på samme chipareal – og dermed også processorens ydelse - fordobles hver 18. måned. Loven blev formuleret helt tilbage i 1965 og den har holdt lige siden. Det ser også ud til, at Moore's lov i hvert fald vil holde de næste fem-ti år.
Historien er noget anderledes med software. Den generelle opfattelse er, at programmerne hele tiden bliver mere opblæste, ineffektive og rodede – men brugerne mærker ikke at softwaren bliver dårligere, fordi hardwaren konstant bliver hurtigere. Den hurtige udvikling betyder også at der slet ikke er tid til at optimere software til en specifik processor, inden der kommer en ny model på markedet.
Et godt eksempel er de aktuelle processorer med to, fire eller seks kerner, hvor det kun er de færreste programmer som rent faktisk kan udnytte regnekraften i de mange kerner.
Det traditionelle billede er altså, at chipudviklerne skaber det ene mirakel efter det næste, mens softwareudviklerne sjusker sig igennem.
Men det passer måske slet ikke. New York Times skriver at en uafhængig gruppe af rådgivere til det Hvide Hus er kommet frem til et noget anden konklusion. De skriver i en rapport, at det faktisk er bedre softwarealgoritmer og ikke hurtigere chips, der er skyld i at computerne kører meget hurtigere i dag.
Rapporten ser på én bestemt opgave med produktions-planlægning, hvor de nødvendige beregninger nu kan gennemføres på en computer 43 millioner gange hurtigere end for 15 år siden. Det lyder jo imponerende.
Det interessante er, at forbedringer i hardwaren – altså hurtigere processorer – kun har gjort beregningerne 1.000 gange hurtigere, mens optimeringer i software-algoritmerne har gjort processen 43.000 gange hurtigere.
Budskabet er altså klart: det er softwareudviklerne og ikke chipdesignerne, der er heltene.
Professor Edward Lazowska fra University of Washington er enig i, at det er imponerende at chipfirmaerne kan fordoble ydelsen med mindre end to års mellemrum.
”Men den opfindsomhed som forskere har brugt på at forbedre ydelsen i algoritmer får selv de eksponentielle fremskridt i Moore's lov til at se trivielle ud,” siger professoren.
Han tilføjer at det er svært at måle ydelsen i algoritmer som udfører ikke-nummeriske opgaver, men de seneste års innovationer inden for tale- og mønstergenkendelse og billedanalyse – som man også ser i produkter på Kinect – skulle være eksempler på, at algoritmerne udvikler sig endnu hurtigere end hardwaren.
Det er selvfølgelig også meget lettere at lave ændringer i software eller forbedre en algoritme end at starte produktionen af en helt ny chip, som typisk kræver milliard-investeringer i store fabrikker.