Internet

Benchmarks: wat is het? Waar is het voor geschiedenis, typen en tips

Inhoudsopgave:

Anonim

Benchmarks zijn een essentieel onderdeel van onze dagelijkse hardware-analyse, ze stellen ons in staat om u een wetenschappelijk vergelijkbare meting te bieden tussen verschillende componenten zoals CPU's, grafische kaarten, opslageenheden, enz. Vandaag gaan we enkele regels wijden aan de geschiedenis, de typen, hoe ze werken, wat ze meten, wat zijn de meest voorkomende maatregelen en we zullen u ook enkele tips geven over hoe u ze moet uitvoeren en welke we moeten vertrouwen.

Wat we tegenwoordig in de pc of mobiele wereld als benchmarks kennen, zijn technieken die zijn geërfd van de industriële omgeving en die sinds het begin van deze revolutie besluitvorming op basis van vergelijkbare gegevens in een gecontroleerde omgeving mogelijk hebben gemaakt.

De wereld van moderne computers past deze technieken toe op bijna elk van de vele verschillende domeinen, en thuisgebruikers hebben ze ook gebruikt als een betrouwbare manier om meer te weten te komen over de prestaties en mogelijkheden van onze systemen, evenals een belangrijk informatiepunt wanneer om belangrijke beslissingen te nemen, zoals de aankoop van onze nieuwe computer, mobiele telefoon, grafische kaart, enz.

Vandaag zullen we het hebben over de geschiedenis van pc-benchmarks, de soorten benchmarks die er zijn en welke componenten van ons systeem geschikter zijn voor dit soort tests die niet alleen prestaties zijn.

Inhoudsindex

Geschiedenis

Het benchmark- of meetsysteem past een gecontroleerde omgeving toe en herkenbare maatregelen die wetenschappelijk vergelijkbaar en verifieerbaar zijn en die sinds haar bestaan ​​naast de wereld van de computer bestaan. De benchmark is als zodanig gedemocratiseerd tot het punt dat een deel van zijn fundamentele essentie verloren is gegaan, namelijk dat deze controleerbaar en controleerbaar is door derden. Nu gebruiken we het meer als een snelle vergelijking van prestaties, maar de traceerbaarheid van de waarachtigheid ervan door derden is zeker grotendeels verloren gegaan.

De meest klassieke benchmarkmethoden hebben altijd verwezen naar de rekencapaciteit van de CPU van het systeem, hoewel deze de laatste tijd varieerde tussen verschillende componenten, omdat deze het overwicht en belang binnen een computer hebben gewonnen.

De twee meest klassieke meeteenheden die nog steeds worden toegepast, zijn de Dhrystones en de Whetstones. Beiden zijn op de een of andere manier de basis geworden van alle synthetische benchmarks die we vandaag kennen.

De oudste is Whetstones (een plaats in het Verenigd Koninkrijk waar de atoomenergiedivisie van het Britse staatsbedrijf gevestigd was) en Dhrystone kwam later spelen met de naam van de eerste (nat en droog).

De eerste is ontworpen in de jaren '70 en de tweede is uit de jaren '80 en beide vormen de basis van vergelijkende prestaties die we in opeenvolgende jaren hebben gehad. Whetstones bood, vereenvoudigend, inzicht in de rekenkracht van de processor bij drijvende-kommabewerkingen, bewerkingen met een groot aantal decimalen.

De Dhrystone is zijn tegenhanger omdat hij is toegewijd aan basisinstructies zonder decimalen, beide gaven een duidelijk beeld van de prestaties van een processor van twee totaal verschillende, maar complementaire benaderingen. Whetstones en Dhrystone zijn afgeleid van twee concepten die we tegenwoordig veel vaker gebruiken, MIPS en FLOP.

Na deze metingen kwamen er andere, zoals de FLOP (Floating-point Arithmetic - floating point arithmetic), die in een computer nu veel belangrijker is dan ooit, omdat het de basis is van geavanceerde berekeningen in veel moderne technieken. zoals algoritmen voor kunstmatige intelligentie, medische algoritmen, weersvoorspellingen, fuzzy logic, encryptie, etc.

LINPACK is in de jaren 80 ontwikkeld door ingenieur Jack Dongarra en wordt tot op de dag van vandaag gebruikt voor het meten van de drijvende-kommacomputercapaciteit van alle soorten systemen. Momenteel zijn er versies geoptimaliseerd door architectuur, CPU-fabrikant, etc.

De FLOPS vullen onze artikelen over grafische kaarten (zeker de enkele of dubbele precisie klinkt bekend), processors en vormen de basis voor het berekenen van stroomvereisten en hardware-ontwikkeling voor elke supercomputer die in bedrijf of ontwikkeling is.

De FLOP is tegenwoordig de meest vereiste prestatiemeeteenheid in de branche, maar is altijd gecombineerd met de MIPS (miljoenen instructies per seconde), wat een interessante meetmaat is, omdat het ons het aantal instructies geeft Basisberekeningen die een processor per seconde kan uitvoeren, maar dat hangt meer af van de architectuur van de processor (ARM, RISC, x86, etc.) en de programmeertaal dan andere meeteenheden.

Naarmate de prestaties vorderden, zijn de vermenigvuldigers gebeurd. We meten nu de prestaties van thuis-CPU's in GIPS en GFLOPS. De basis blijft dezelfde, klassieke rekenkundige bewerkingen. Sisoft Sandra blijft ons dit type meting aanbieden in sommige van zijn synthetische benchmarks.

De MIPS is ook meer gedegradeerd naar de CPU als een klassiek element en de FLOP is uitgebreid naar andere bloeiende gebieden, zoals de procescapaciteit of de algemene berekening van voormalige processors die erg gericht zijn op specifieke taken zoals de GPU's die we allemaal op onze processors of op monteren onze speciale uitbreidingskaarten.

Aan deze basisconcepten heeft de tijd nieuwe meeteenheden toegevoegd die even veel of belangrijker zijn dan deze in een moderne computer of supercomputer. Gegevensdoorvoer is een van deze maatregelen die erg belangrijk is geworden en wordt momenteel gemeten in IOP's (invoer- en uitvoerbewerkingen per seconde) en ook in andere vormen, zoals MB / GB / TB-opslagmaatregelen in vergelijking met de tijd die nodig is om overdracht van het ene punt naar het andere (MBps - Megabytes per seconde).

AS-SSD kan de prestaties van een harde schijf meten in MBps of IOP's.

Momenteel gebruiken we de overdrachtsmaatregel, in de verschillende vermenigvuldigers ervan, als een manier om de snelheid van de informatiedoorvoer tussen twee punten te interpreteren wanneer we bepaalde informatie moeten uitzenden, we moeten eigenlijk wat meer informatie hebben gegenereerd. Dit hangt af van het protocol dat wordt gebruikt voor de overdracht van informatie.

Een duidelijk voorbeeld, en dat we veel gebruiken, zit in de PCI Express-interface. Onder dit protocol moeten we voor elke 8 bits informatie die we willen verplaatsen (0 of 1s) 10 bits informatie genereren, aangezien die extra informatie bedoeld is voor controle van de communicatie die wordt verzonden voor foutcorrectie, gegevensintegriteit, enz.

Andere bekende protocollen die ook dit "verlies" van echte informatie introduceren, is het IP-adres, dat u gebruikt om dit artikel te lezen en dat zorgt ervoor dat uw 300MT / s-verbinding een snelheid van iets minder dan 300 mbps biedt.

Daarom gebruiken we de Gigatransfer of de overdracht wanneer we verwijzen naar onbewerkte informatie die door de interface wordt verzonden, en niet naar de informatie die daadwerkelijk in de ontvanger wordt verwerkt. Een 8GT / s PCI Express 3.0-gegevensbus verzendt eigenlijk 6, 4 GBps aan informatie voor elke lijn die tussen de punten is aangesloten. Overdracht is erg belangrijk geworden door de integratie van het PCI Express-protocol in alle hoofdbussen van een thuis- en professionele computer.

In de afgelopen tijd zijn we ook begonnen maatregelen te combineren als een manier om de verwerkingskracht te relateren aan andere zeer belangrijke factoren in moderne computers, waarbij verbruik een van deze maatregelen is die wordt geïntroduceerd als een vergelijkende schaal tussen de prestaties van twee systemen. De energie-efficiëntie is tegenwoordig evenveel of belangrijker dan het procesvermogen en daarom zijn er gemakkelijk benchmarks te zien die het procesvermogen vergelijken op basis van het wattverbruik van het gemeten element.

In feite verwijst een van de grote lijsten met supercomputers niet zozeer naar het bruto vermogen van de computer tussen al zijn rekenknooppunten, maar naar de ontwikkeling van dat vermogen op basis van het wattage of de energie die door het hele systeem wordt verbruikt. De Green500-lijst (FLOPS per watt - FLOPS per watt) is een duidelijk voorbeeld van hoe het verbruik nu fundamenteel is voor elke zichzelf respecterende benchmark, hoewel we ongetwijfeld allemaal goed blijven kijken naar de TOP500-lijst die deze factor niet als conditionerende factor heeft.

Soorten benchmarks

Hoewel we kunnen praten over nog veel meer families of soorten benchmarks, zal ik de lijst in de twee meest voorkomende klassen vereenvoudigen van degenen die het dichtst bij ons allemaal staan ​​als min of meer geavanceerde gebruikers.

Aan de ene kant hebben we de synthetische benchmarks die grotendeels die zijn die ons maatregelen bieden waarover we eerder hebben gesproken. Synthetische benchmarks zijn programma's die gecontroleerde tests uitvoeren met een min of meer stabiele programmacode gericht op een specifiek platform en architectuur. Het zijn programma's die zeer specifieke tests uitvoeren die een of meer van onze componenten kunnen integreren, maar waarbij altijd dezelfde test of tests worden uitgevoerd, zonder wijzigingen.

Beeldweergave is altijd een goede methode geweest om de prestaties van een CPU in een modern systeem te kennen, omdat het een veeleisende taak is. Cinebench R15 heeft ook verschillende tests, één voor GPU en twee voor CPU, waar we de prestaties van systemen met meerdere kernen en procesthreads kunnen kennen.

Ze bieden een gecontroleerde testomgeving, waar er geen wijzigingen zijn behalve versies en waar deze wijzigingen correct zijn gedocumenteerd, zodat de gebruiker weet welke versies met elkaar kunnen worden vergeleken. Dit soort programma's kunnen verschillende subsystemen van onze computer afzonderlijk testen, met andere stukjes code of specifieke benchmarks om een ​​bepaald type test uit te voeren, of gecombineerd die kunnen worden beïnvloed door de prestaties van een, twee of meer systeemcomponenten. De in een game geïntegreerde benchmark of programma's als Cinebench, Sisoft Sandra, SuperPI, 3DMark,… zijn duidelijke voorbeelden van synthetische benchmarks.

Andere synthetische benchmarks die we niet moeten verwarren met echte benchmarks zijn die welke de uitvoering van echte programma's simuleren, of die actiescripts uitvoeren in echte programma's, ze zijn ook synthetisch omdat er geen willekeur in de test is, PC Mark is een duidelijk voorbeeld van een synthetisch benchmarkprogramma dat we kunnen verwarren met een echte benchmark.

De eigenlijke benchmark is een heel andere testmethode omdat deze de willekeur accepteert van het gebruik van een programma om de prestaties te meten. Spelers zijn gewend om dit soort benchmarks of prestatietests uit te voeren wanneer we de kwaliteitsparameters van een game aanpassen aan de mogelijkheden van onze hardware.

Het meten van de prestaties van een game tijdens het spelen is een echte maatstaf.

Wanneer je de FPS opent die de game geeft en continu probeert om de gewenste 60FPS te bereiken, voeren ze een echte benchmark uit. Hetzelfde kan worden geëxtrapoleerd naar elk ander type programma en als u een ontwikkelaar bent, wanneer u de code van uw programma optimaliseert, dan doet u ook echte benchmarktests waar wat uw code verandert, of de manier waarop u deze uitvoert, op een platform van stabiele of variabele hardware.

Beide soorten benchmarks zijn belangrijk, de eerste stellen ons in staat ons systeem te vergelijken met andere in een gecontroleerde omgeving en de tweede zijn een manier om onze werking te optimaliseren waarbij ook twee belangrijke factoren worden toegevoegd: de willekeur in de uitvoering en de menselijke factor. Beide factoren bieden een aanvullend standpunt over de prestaties van de component of componenten die we willen testen.

Overwegingen bij benchmarking

Wil een benchmark nuttig en effectief zijn, dan moeten we rekening houden met bepaalde factoren die echt belangrijk zijn. Vergelijking tussen verschillende platforms en architecturen introduceert een belangrijke onzekerheidsfactor.Daarom biedt dit type benchmarks waarmee u iOS-mobiele telefoons kunt vergelijken met Windows x86-computers, om een ​​voorbeeld te geven, u moet ze nemen met een pincet omdat het niet alleen verandert besturingssysteem kernel, maar processorarchitecturen zijn heel anders. De ontwikkelaars van dit type benchmarks (bijvoorbeeld Geekbench) introduceren correctiefactoren tussen hun verschillende versies die nauwelijks controleerbaar zijn.

Daarom is de eerste sleutel om een ​​benchmark vergelijkbaar te maken tussen verschillende hardware, dat het testecosysteem zoveel mogelijk lijkt op het benchmarkplatform, het besturingssysteem, de stuurprogramma's en de softwareversie. Er zullen hier zeker elementen zijn die we niet kunnen homogeniseren, zoals de grafische controller als we AMD-graphics testen tegen Nvidia-graphics, maar de rest moeten we proberen deze zo stabiel mogelijk te maken. In dit geval zouden we ook hardware opnemen, want om grafische kaarten te vergelijken, is het jouw ding om hetzelfde besturingssysteem, dezelfde processor, dezelfde geheugens en alle operationele parameters te gebruiken, en ze hetzelfde te houden, inclusief de parameters van kwaliteit, resolutie en test in de benchmark. Hoe stabieler ons testecosysteem is, hoe betrouwbaarder en vergelijkbaar onze resultaten zullen zijn.

We raden aan om te lezen Hoe weet ik of mijn processor een bottleneck heeft?

Iets anders waarmee we rekening moeten houden, is dat benchmarktests normaal gesproken een stressfactor hebben op de hardware die we gaan testen en deze hardware normaal gesproken onderwerpen aan situaties die normaal niet voorkomen bij normaal gebruik van het systeem. Elke maatstaf die we van onze harde schijf, grafische kaart of processor halen, onderwerpt ze aan situaties die gevaarlijk kunnen zijn voor de hardware, dus we moeten de juiste maatregelen nemen zodat het stresspunt geen breukpunt wordt of ook in een element van prestatievermindering omdat veel componenten beveiligingssystemen hebben waarmee ze hun prestaties verminderen in het geval van bijvoorbeeld temperaturen buiten hun gebruiksbereik. Voldoende koeling, rusttijden tussen tests, correcte toevoer van de geteste componenten… alles moet in een ideale situatie zijn om de test soepel te laten verlopen.

Aan de andere kant gebruiken we ook precies dit soort benchmarks om het systeem aan stress te onderwerpen om de stabiliteit ervan in dit soort situaties te zien, het is een andere manier om een ​​benchmark toe te passen, omdat het niet alleen op zoek is naar de prestaties, maar ook of het systeem is stabiel en zelfs nog beter als het systeem presteert zoals het zou moeten in deze stressvolle situaties.

Conclusie

Voor degenen onder ons die zich toeleggen op het professioneel testen van computerhardware, is de benchmark een werkinstrument en dankzij deze hebben gebruikers een wetenschappelijke en verifieerbare manier om de prestaties van onze volgende computer in elk van zijn subsystemen nauwkeurig te vergelijken of te kennen. vergelijkbaar met gereedschappen die op industrieel niveau worden gebruikt.

Een testtafel, zoals die u in de afbeelding ziet, probeert de testmethode nauwkeurig te standaardiseren, zodat de vergelijkende benchmark zo betrouwbaar mogelijk is en testbaar is bij het introduceren van variaties die de resultaten wijzigen.

Maar zoals elke "laboratorium" -test, wil hij betrouwbaar zijn, dan moeten de juiste voorwaarden aanwezig zijn om hem te kunnen uitvoeren, en nog meer om hem vergelijkbaar te maken tussen verschillende systemen.

Vandaag hebben we u iets verteld over de geschiedenis van dit type programma, de verschillende typen, hoe ze werken en hoe u betrouwbare informatie van hen kunt krijgen. Ze zijn nuttig, maar voor mij zijn ze gewoon nog een stukje informatie om in gedachten te houden en ik zou het altijd achter persoonlijke ervaring en actieve tests plaatsen met echte programma's die we elke dag gaan gebruiken.

Benchmarks zijn prima om minimale prestatiegegevens in ons beslissingsproces te plaatsen, maar ze mogen die beslissingen niet definiëren en, als laatste tip, synthetische benchmarks vermijden die beweren de prestaties tussen architecturen, besturingssystemen, enz. Te kunnen vergelijken.

Internet

Bewerkers keuze

Back to top button