Benchmark test

(fra engelsk "benchmark" med betydningen fikspunkt, sammenligningsgrundlag, norm, rettesnor).

En prøvemetode til at vurdere ydeevnen af et edb-systems maskinel og programmel. I en benchmark test bliver det system, der skal vurderes, udsat for et kendt belastningsmønster og systemets ydeevne målt. Hensigten med dette er at sammenligne den målte ydeevne med ydeevnen på et andet system. Benchmark tests bliver i stor udstrækning benyttet af brugere, der står foran en større anskaffelse af udstyr, eller hvis anskaffelsen er en radikal ændring i forhold til nuværende udstyr. Generelt kan benchmarks dog kun forventes at give en grov tilnærmelse til den ydeevne, der opnås i virkelig drift.

Et edb-systems ydeevne kan angives på mange måder. En grov sammenligning mellem to systemer kan anvende f.eks. CPU'ernes klokfrekvens eller deres hastighed målt i MIPS eller megaflops. Dette har kun begrænset brugbarhed og kan være direkte misvisende, idet brugsmønstret for instruktionerne og anvendelsen af ydre enheder har stor betydning. En hurtig maskine kan derfor i en konkret sammenhæng give dårligere resultater end den tilsyneladende langsommere konkurrent. Af vigtige faktorer, der kan påvirke den reelle ydeevne, kan nævnes cache hit rate, antal sidesvigt (se demand paging) og mængden af data der transporteres til/fra ydre enheder.

Der er derfor brug for andre måder at angive den forventede ydeevne på, og benchmarks er en oplagt mulighed. I nogle benchmark tests belastes computeren med et standard opgavemix (syntetisk belastning), mens der ved andre former for benchmark sammensættes en belastningsprofil, svarende til den forventede produktion med typiske data og programmer, og programmer specielt kritiske for brugeren. Endelig har de store producenter udviklet deres egne benchmarks, der normalt kun giver et sammenligningsgrundlag mellem computere inden for producentens eget produktprogram. Benchmark tests kan være både svære og dyre at gennemføre, og i mange situationer vil det trods indsatsen være umuligt at få en troværdige tal. Derfor anvendes også analytisk eller statistisk simulering af edb-systemerne.

Der har i tidens løb været udviklet en mange forskellige benchmarks til sammenligning af forskellige sider af computeres ydeevne. Linpack anvendes i forbindelse med opgaver, der indeholder mange vektor- og matrixoperationer. Af andre benchmarks, der har været brugt, kan nævnes Whetstone, Dhrystone og IBM's RAMP-C. Nogle udbredte benchmarks er SPEC til CPU-tunge anvendelser, TPC-C i forbindelse med transaktionsbehandling og Winstone ved PC'er.

Forfattere: 
Klaus Hansen
Casper Thomsen