De vergelijking tussen perifere processors en coprocessors wat betreft verwerkingssnelheid is genuanceerd, omdat deze sterk afhankelijk is van de specifieke architectuur en de taken die ze uitvoeren. Er bestaat geen universeel sneller type. Wel kunnen we enkele algemene opmerkingen maken:
Coprocessors:
* Over het algemeen sneller voor specifieke taken: Coprocessors zijn ontworpen om uit te blinken in *specifieke* soorten berekeningen, vaak zeer parallelle berekeningen zoals drijvende-kommaberekeningen (bijvoorbeeld voor grafische of wetenschappelijke computergebruik) of cryptografie. Omdat ze gespecialiseerd zijn, kunnen ze *voor die taken* vaak aanzienlijk hogere snelheden bereiken dan een CPU voor algemene doeleinden. Ze zijn geoptimaliseerd voor hun niche.
* Beperkte functionaliteit: Hun snelheid gaat ten koste van de veelzijdigheid. Ze kunnen doorgaans geen algemene computertaken uitvoeren. Al hun middelen zijn bestemd voor hun gespecialiseerde functie.
* Snelheid ten opzichte van de hoofd-CPU: Het snelheidsvoordeel van een coprocessor is relatief ten opzichte van de hoofd-CPU. Een snelle coprocessor gecombineerd met een trage CPU biedt mogelijk geen significante algehele systeemsnelheid. Omgekeerd zou een relatief trage coprocessor nog steeds een boost kunnen geven als de hoofd-CPU belast wordt door de taak die de coprocessor overneemt.
Perifere processors:
* Variabele snelheid: Randprocessoren (in deze context ook wel "offloadprocessors" genoemd) zijn algemener bedoeld dan coprocessors, maar zijn nog steeds gericht op het uitvoeren van specifieke taken. Deze taken hebben vaak betrekking op I/O-bewerkingen – het beheren van randapparatuur zoals netwerkkaarten, opslagapparaten, enz.
* Snelheid bepaald door taak en ontwerp: Hun snelheid is sterk afhankelijk van hun architectuur en de eisen van de randapparatuur die ze beheren. Sommige zijn misschien behoorlijk snel, vooral degenen die gegevensstromen met een hoge bandbreedte verwerken, zoals netwerkinterfaces, terwijl andere misschien langzamer zijn en bedoeld zijn voor eenvoudige besturingstaken.
* Meestal minder gespecialiseerd dan coprocessors: Hoewel ze misschien zijn geoptimaliseerd voor I/O, zijn ze niet zo beperkt gericht als coprocessors. Ze beschikken vaak over instructiesets voor meer algemene doeleinden, wat betekent dat het minder waarschijnlijk is dat ze de dramatische snelheidsverhogingen zullen realiseren die te zien zijn bij gespecialiseerde coprocessors voor hun specifieke taak.
Samengevat:
* Voor gespecialiseerde berekeningen: Coprocessors bieden *doorgaans* aanzienlijk hogere verwerkingssnelheden dan een hoofd-CPU voor hun ontworpen taken.
* Voor I/O-beheer: De snelheden van randapparatuurprocessors variëren sterk, afhankelijk van hun ontwerp en de eisen van de randapparatuur die ze beheren; het is onwaarschijnlijk dat ze voor een enkele taak net zo dramatisch sneller zullen zijn dan een CPU als een coprocessor.
Het belangrijkste verschil ligt in specialisatie. Een coprocessor is een toegewijde specialist, terwijl een perifere processor een meer generalist is die zich richt op een bepaald gebied (I/O). Deze specialisatie heeft een directe invloed op hun relatieve snelheden in context. Het vergelijken van de ruwe kloksnelheid van een coprocessor met een perifere processor zou niet zinvol zijn zonder rekening te houden met hun specifieke taken en architectonische ontwerpen. |