Forklaret · tre
Vi offentliggør sammenligninger med andres software, så metoden skal kunne efterprøves. Her er den hele: maskinerne, indholdet, de indstillinger hver klient får, og reglerne der afgør, om en kørsel tæller som et resultat eller bliver kasseret.
Riggen
Hver klient i en sammenligning kører på én maskine, mod de samme udbydere, på det samme indhold, inden for den samme omgang. Intet bliver ført videre fra en tidligere dag.
Reglen der afgør alt
Dette er det allervigtigste på denne side. Hver omgang slutter med at finde den største fil, klienten har frembragt, hvor som helst i dens output, og hashe den mod en kendt korrekt kopi. Størrelse og MD5, i hver eneste omgang, ikke på en stikprøve.
Vi gør det, fordi en klients egen melding om succes ikke er pålideligt bevis. Vi har målt en klient melde done på en opgave, hvis outputmappe var tom. Vi har målt en anden melde Completed efter at have leveret rå arkivbind, den aldrig pakkede ud. Et udbredt reparationsværktøj afslutter med en fejlkode efter en vellykket reparation. Ingen af de klienter løj; statustekster betyder ganske enkelt forskellige ting for forskellige forfattere, og en måling, der stoler på dem, måler ordvalg frem for adfærd.
Målstregen er derfor den samme for alle: indholdet findes, i den rigtige størrelse, med den rigtige hash. Standser en klient inden da, får den ingen tid, og hele kolonnen bliver markeret frem for stiltiende udeladt. En langsom klient, der bliver færdig, klarer sig bedre end en hurtig, der ikke gør, og tabellen skal sige det.
Følgeslutningen er, at en manglende gennemførelse er et resultat, ikke en fejl fra vores side. Når vi offentliggør en, beskriver vi sluttilstanden i almindelige vendinger, herunder alt der tyder på, at den er særegen for netop den opgave frem for generel, og vi siger, hvad klienten gjorde i stedet for at blive færdig.
Rækkefølge og gentagelse
Udbydernes gennemløb svinger fra minut til minut, undertiden med en faktor to eller tre. To målinger taget på forskellige tidspunkter måler til dels vejret.
Klienter kører derfor lige efter hinanden og på skift, og rækkefølgen vendes mellem gentagelserne, så ingen klient altid er den, der går først ud på en varm eller kold linje. Et resultat er mønsteret på tværs af gentagelserne, ikke den bedste kørsel. Når spredningen er stor, offentliggør vi intervallet frem for et gennemsnit, der ville skjule den, og hvis vi ikke ved, hvorfor en klients tal spreder sig, siger vi det i stedet for at opfinde en årsag.
Sammenligninger på tværs af forskellige omgange undgås, hvor det kan lade sig gøre. Kræver en påstand to tal, kører vi hellere begge om i én omgang end at trække den ene dags tal fra den andens, fordi riggens tilstand, udbyderforholdene og klientversionerne alle skrider. Når vi sammenligner to af vores egne builds, kører begge i samme omgang, skiftevis, på det samme indhold.
De uglamourøse kontroller
De fleste findes, fordi en tavs fejl engang frembragte et sundt udseende, offentliggørelsesegnet og forkert tal. Hver enkelt kører nu automatisk og standser omgangen frem for at advare.
Hvor en klient har brug for bestemte indstillinger for at yde godt, får den dem, og omgangen angiver hvilke. Eksempler: forespørgselskø slået til, hvor en klient leveres med den slået fra, dublettjek slået fra, når den samme opgave hentes gentagne gange, og udpakningshjælpere taget fra klientens egen pakke frem for en systemkopi. Formålet er, at hver klient måles, når den er bedst, frem for ved sine standardværdier, eftersom standardværdier er en anden diskussion end formåen.
Hvad vi ikke vil gøre