Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 20 reacties
Bron: Ars Technica, submitter: T.T.

Ars Technica heeft bijna een jaar na de introductie van de Pentium M-processor, deze aan een nader onderzoek onderworpen. Hierbij wordt er ingegaan op de technische aspecten van de processor en de microarchitectuur van de chip. De Pentium M is gebaseerd op de P6-architectuur van Intel. Op deze architectuur waren eerder al de 32-bit desktopprocessors Pentium Pro en Pentium III gefundeerd, maar in de Pentium M komen ook kneepjes uit de Pentium 4-architectuur voor. Verder zijn er een aantal vernieuwingen in te vinden, die niet in andere processors zijn terug te vinden. Hoewel Intel niet al te loslippig is over de Pentium M, zijn er hier en daar wel wat interessante zaken te melden, vandaar de blik door het vergrootglas van Ars Technica.

*Pipeline en execution core
Allereerst wordt er gekeken naar de pipeline en de execution core. Hier zijn de kleinste verschillen tussen de Pentium III-processor en de Pentium M-processor waar te nemen. Het onderstaande diagram behandelt de P6-architectuur op basis van de Pentium III, waarbij de verschillen met de Pentium M voornamelijk op het gebied van het reservation station zijn. Waar de Pentium III maximaal vijf micro-operations (uops) per cyclus kan verwerken, is dit bij de Pentium M mogelijk opgevoerd tot twintig. Verder zijn het aantal ingangen in de reorder buffer opgewaardeerd naar veertig. In vergelijking met de Pentium 4 zijn er weinig verschillen in de prestaties op het gebied van integer- en floating point-berekeningen, al blijft de aanvoerder - de PowerPC 970 - ver buiten bereik.

P6-core

Het vermoeden bestaat echter dat dit diagram de waarheid omtrent de Pentium M niet geheel eer aan doet. Het is zeer goed mogelijk dat Intel een aantal aanpassingen heeft uitgevoerd met betrekking tot de FPU en vectorberekeningen. Uiteraard kan de Pentium M klok-voor-klok uitstekend mee met de Pentium 4 - gebaseerd op eerdere vergelijkingen tussen Pentium III en Pentium 4 - maar doordat de pipeline van de processors dusdanig verschillen, is een eerlijke vergelijking klok-voor-klok niet mogelijk. Ook het verschil in stroomverbruik is dusdanig, wat grotendeels te verklaren is doordat de Pentium 4 niet specifiek bedoeld is voor mobiel gebruik.

De pipeline van de Pentium M is een stukje langer dan die van de Pentium III, maar wel korter dan die van de Pentium 4. Deze verlenging heeft waarschijnlijk te maken met het feit dat zo de kloksnelheid verhoogd kan worden om meer uops per cyclus te kunnen verwerken. Dit is echter niet de voornaamste reden waarom de Pentium M zo goed presteert; branch prediction speelt namelijk een nog grotere rol. Dankzij de verbetering hiervan is de efficiency van de processor een flink stuk omhoog gegaan. Het valt weliswaar in het niet met - alweer - de PowerPC 970, maar het is stukken beter dan zowel de Pentium III als 4. De Pentium M gebruikt dezelfde branche predictor als van de Pentium 4, maar dan met twee toevoegingen. De Loop Detector en de indirecte branch detector zijn twee gespecialiseerde branch detectors en deze werken gezamenlijk met de originele branch detector.

*Branch prediction
Wanneer er wordt gekeken naar de branch-prediction van Intel zien we dat er gebruik gemaakt wordt van een dynamische versie hiervan. Hierdoor ontstaan er geen problemen met een branch zonder lus, daar namelijk de geschiedenis bijgehouden wordt van de voorspellingsresultaten. Dit levert juistere voorspellingen op, alleen is er een manco. De juistheid van deze voorspellingen neemt toe naarmate de geschiedenis beter wordt bijgehouden, dat wil zeggen over een langere periode. Bij de Pentium 4 wordt er gebruikgemaakt van een 4096-entry branch history table (BHT) in combinatie met een zeer accuraat voorspellingsalgoritme. De BHT is daarnaast ook nog redelijk groot, alleen is het niet groot genoeg om de volledige geschiedenis van de voorspellingen bij te houden. Zeker wanneer er in de lus flink wat herhalingen moeten worden uitgevoerd, raakt de 4K-buffer van de BHT snel vol. Deze 4096-buffer wordt trouwens voor elke gekozen branch opgesteld.

De Loop Detector - hoe kan het ook anders - analyseert de branch op eventuele lussen in een bepaalde aftakking. Wanneer zo'n branch is ontdekt, worden er resources vrijgemaakt om deze in zijn geheel uit te voeren en te voorspellen. Een belangrijke toevoeging dus op de Pentium 4-BHT. De indirecte branch predictor is er voor om een aftakking uit te voeren wanneer er meerdere oplossingsmogelijkheden zijn, bijvoorbeeld een eindspel in het schaken. Aangezien er meerdere oplossingen zijn, is het niet makkelijk om te voorspellen welke aftakking er wordt genomen door de software. Ondanks dit alles is een accuratessegraad van 75 procent haalbaar, waarbij directe branch predictors 97 procent halen.

De werking van de indirect branch predictor lijkt veel op de BHT, maar er wordt andere informatie opgeslagen. Dit is namelijk de favoriete keuze van de branch en onder welke condities deze keuze wordt gemaakt. Dankzij deze verbeteringen en toevoegingen is de accuratessegraad van de Pentium M twintig procent omhoog gegaan, wat een daadwerkelijke performancewinst betekent van zeven procent. Dit hangt uiteraard af van welke software er wordt gebruikt, maar naast de performancewinst is er ook een efficiency in het stroomverbruik gerealiseerd. Dit komt doordat er minder energie verspild wordt met verkeerde voorspellingen.

*Micro-op fusion en stack execution unit
Een van de meest fascinerende vernieuwingen van de Pentium M, is de wijze waarop deze de uops behandeld. Dit komt qua werking dicht in de buurt bij hoe de PowerPC 970 omgaat met het groeperen van instructies. Uops worden gedistilleerd uit de instructiecode die naar de processor toe worden gezonden. De processor kan de code echter niet op deze manier verwerken, vandaar dat de instructiecode wordt opgedeeld in nog kleinere stukjes die wel te behappen zijn door de execution core van de P6, de zogenaamde uops. Om al deze uops uit elkaar te houden en later weer bij elkaar te voegen komen de reorder buffer en het reservation station om de hoek kijken. Door de vergroting van het aantal ingangen in de reorder buffer en van de verwerkingsnelheid van het reservation station is het nu mogelijk om de honger van de verbeterde P6-execution core tevreden te stellen. Het punt is echter wel, hoe meer gegevens, des te meer transistors er worden gebruikt en des te meer stroom benodigd is. Laat dat nou net niet de bedoeling zijn van de Pentium M.

Dit is opgelost door bepaalde uops met elkaar te laten fuseren. Deze fusies vinden plaats tussen gelijke en gerelateerde soorten uops en worden derhalve toegewezen tot één reorder buffer- en reservation station-invoer. Dit heeft geen invloed op de berekening van de uops - deze worden nog altijd apart berekend - maar de gefuseerde uops worden wel als groep behandeld, wat dus scheelt in het aantal toegewezen transistors. Omdat de Pentium M niet van begin af aan is ontworpen, maar op basis van de P6-core, zijn er wel een aantal beperkingen waarmee rekening gehouden moest worden. Zo zou het reservation station van de P6 helemaal opnieuw ontworpen moeten worden, wat niet de bedoeling was.

Vandaar dat de micro-op fusion beperkt blijft tot een tweetal specifieke instructietypen: de laad- en de opslaginstructie. Of er nog meerdere instructietypen worden gefuseerd is niet duidelijk. In ieder geval de reden waarom de laad- en opslaginstructie wel worden gefuseerd is de volgende: volgens Intel wordt er namelijk een performanceverbetering van vijf procent voor integer-code en negen procent voor floating point-code behaald, dankzij micro-op fusie. Verder zorgt de laadinstructie voor het grootste deel van de integer-code perfomancewinst. Terwijl de twee instructietypen ongeveer evenveel bijdragen aan de verbeteringen omtrent de floating point-codeberekeningen.

Centrino Banias die

De stack execution unit elimineert de noodzaak voor het gebruik van een speciale uop, die gebruikt wordt door de Pentium III- en Pentium 4-core. Deze uop past de stack pointer register - ESP - aan zodat de toegewezen waarden kunnen worden opgeteld of verminderd. Door toezicht te houden op de stroom aan instructies uit de decoder kan de stack execution unit de taken van de specifieke uop overnemen. Hierdoor ontstaan er een aantal voordelen, uiteraard zijn er minder uops nodig, wat er weer voor zorgt dat er minder transistors per taak in beslag worden genomen en dus uiteindelijk een stroombesparing oplevert. Verder, doordat er minder ruimte door de integer execution units in beslag worden genomen voor het aanpassen van de ESP, kunnen deze worden toegewezen aan andere berekeningen, wat weer tot een snelheidsverbetering leidt.

*Conclusie
Door het sterke punt van de Pentium 4 te combineren met de voordelen van de P6-core heeft Intel een uitstekende processor kunnen ontwerpen en neerzetten. De Pentium M is zeker niet alleen interessant voor de mobiele markt, ook in servers kan deze processor makkelijk zijn mannetje staan. Wanneer hieraan ook nog IA-32e-ondersteuning gehangen gaat worden kan de Pentium M zelfs een voorname rol op de desktopmarkt gaan spelen. Dit ondermeer dankzij de 1MB L2-cache en de 64KB L1-cache. De laatste is hierbij twee keer zo groot als waarmee de Pentium 4 het moet doen. Het is ook nog mogelijk dat de Pentium M in de toekomst wordt ingezet in een groep, waarbij meerdere zuinige processors worden aangestuurd door multi-threaded software. Een andere optie die nog wordt voorgedragen is dat de Pentium M als opvolger van de Prescott kan gaan dienen, wanneer de laatste niet het resultaat bereikt dat Intel ervan verwacht. Een wilde gedachte weliswaar, maar de toekomst zal het leren.

Lees meer over

Gerelateerde content

Alle gerelateerde content (27)
Moderatie-faq Wijzig weergave

Reacties (20)

Pentium-M + IA32e --> concurrent voor de Opteron EE :? Zomaar een gok, maar het lijkt me niet onwaarschijnlijk...
de IPC van een pentium 4 is vrij matig vergleken met de Athlon-XP / Opteron series, dus als de Pentium M iets beter presteert dan de P4 is het nog steeds twijfelachtig of dat een Opteron EE kan verslaan die op vrijwel gelijke snelheid loopt. En uiteraard is er het probleem met moederborden/chipsets.
als de Pentium M iets beter presteert dan de P4
Ik had altijd begrepen dat de IPC van de Pentium-M veel beter was dan die van de P4. En dan nog valt aan de IPC van de Pentium-m nog wel wat op te krikken door bijvoorbeeld HTT toe te voegen, of de FSB te verhogen.
Kijk anders eens naar naar deze benchmark waar een Pentium-M met een Mobile-A64 wordt vergeleken.

Als Intel ia-32e naar de Pentium-M brengt, dat er een hele leuke combinatie ontstaat, die zeker niet voor gek staat als je hem naast een Opteron zet.
Ik vermoed dat hyperthreading in een CPU als deze een veel complexer voorspellings algoritme zal vereisen en aangezien de Pentium-M juist zo afhangt van zo'n algoritme, zou HT wel eens de CPU een stuk langzamer kunnen maken.
Ik vermoed dat hyperthreading in een CPU als deze een veel complexer voorspellings algoritme zal vereisen en aangezien de Pentium-M juist zo afhangt van zo'n algoritme, zou HT wel eens de CPU een stuk langzamer kunnen maken.
Voorspellen gaat vooral binnen een thread goed. Tussen 2 onafhankelijke threads die door elkaar worden uitgevoerd zal het veel lastiger zijn om te voorspellen wat er nog gaat gebeuren. Ik weet alleen niet welk deel van de CPU er precies dubbel uitgevoerd worden voor een HTT compatible CPU. Misschien dat er nog aanpassingen mogelijk zijn, en (een deel van) de branch prediction ook dubbel uitgevoerd kan worden, zou niet zo veel extra kosten, maar wel veel extr kunnen opleveren.

De Pentium-M heeft wel veel Cache (zowel level1 als level2) dat is voor Hyperthreading zeker een voordeel. Verder heeft intel niet zo lang geleden ook HTT toegevoegd aan de P4-m, dus ik vermoed dat het in de toekomst ook wel naar de Pentium-M komt. Misschien wacht Intel hier iets langer mee omdat de winst minder groot is (de hele architectuur zorgt er al voor dat alles efficienter wordt gebruikt, dus HTT zal een kleinere winst opleveren).
De IPC van de Pentium-M is niet een klein beetje beter als die van de P4, maar een stuk beter. Er zijn diverse testen geweest en daaruit bleek dat een Pentium-M 1,5GHz kwa snelheid te vergelijken is met een P4 2,4GHz met een 533MHz fsb. Dat is zeker te vergelijken met het verschil in IPC tussen de P4 en de Athlon serie.

Daarnaast is er geen probleem met chipsets, je kan de chipset die erbij hoort gewoon op een (mini)-ATX moederbord zetten, er is een fabrikant die dat gedaan heeft en dat kan erg interessant zijn voor stillen kleine maar krachtige pc's of blades.
jij bedoeld misschien het duites bedrijf Lippert deze maken nu al bordjes met een Pentium M (banias) cpu erop. Deze zijn trouwens erg geschikt voor server gebruik.

link naar site
Moet het dan geen Xeon-M worden?
Opteron EE :?
C'est quoi ca?
Heb duidelijk iets gemist... :/
Denk dat Intel op termijn de P4 strategie(MHz is performence) zal laten vallen en verder zal werken met de P M technologie.
Je kunt immers niet blijven de MHz omhoog gooien, komen te veel nevenverschijnselen bij kijken.
Ik denk toch niet dat Intel zomaar de P4 zal weggooien en verder zal werken met de PM. De reden wordt aangehaald in het artikel: de P-M is gebaseerd op de P6 architectuur, en dis is ondertussen toch echt wel oud geworden. Ze hebben er nog heel veel aan verbeterd, maar het zal nooit zo efficient zijn als een nieuw ontwerp.

Mocht Intel niet langer tevreden zijn over de P4 architectuur, dan zullen ze wel een nieuwe architectuur ontwerpen volgens mij.
@C00P
Ik geloof nooit dat intel dat zal gaan doen, vooral omdat dit natuurlijk hun grootste voordeel zou ondermijnen.
Namelijk: "Ooohhh.. maar liefs 3.4GHz !!!!" en "blah.. blah.. echte MHz-en voor echte performance ..blah" onzin |:(
Het is niet voor niets dat AMD hun "PR-rating en Quatispeed" gedoe van stal moest halen, anders hadden ze haast geen CPU meer verkocht waarschijnlijk.

De consument snapt helemaal niets van IPC en intel wil dat graag zo houden :z
Is het niet µops i.p.v. uops :?

EDIT: kan dit verplaatst worden naar de hoofdtread?
Voor mij de hamvraag: is deze processor ook in de winkel te koop? Ik zoek een zuinige processor voor mijn webserver, dus dit lijkt een goede keus.
"Deze verlenging heeft waarschijnlijk te maken met het feit dat zo de kloksnelheid verhoogd kan worden om meer uops per cyclus te kunnen verwerken"

Ik denk dat je deze zin wilt veranderen, dit kan natuurlijk nooit.
door de kloksnelheid te verhogen worden er niet meer uops per cyclus verwerkt, maar meer cycli per seconde. Het aantal uops per cyclus zal eerder afnemen door een groter negatief effect van een branche misprediction.
Ik wil even melden dat ik blij ben dat er weer eens een echt technisch artiekel op tweakers staat. Waardoor het voor mij eindelijk duidelijk wordt waarom die Pentium M zo snel is.
Ik ga ervoor dat intel een "nieuw" product op de markt zet (P3+) die relatief zeer goedkope ontwikkelkosten heeft, een hoge yield (zeker in vergelijking met de P4) en beter doel voor hun verkoopmachine.

Als je intel volgt weet je dat de P4, vooral de eerste generaties zeker geen goede processoren zijn... dit is meer een, back to basics stap..
Als je intel volgt weet je dat de P4, vooral de eerste generaties zeker geen goede processoren zijn... dit is meer een, back to basics stap..
Ik denk eerder aan een efficiënt-ontwerp tov het "overgeklokt"-ontwerp van P4.

Pentium 4 is gemaakt om hoog te klokken, de performance per MHz is minder belangrijk.
Precies. Intel heeft erop gegokt dat de consument voor de Mhz'jes zou gaan. Ik denk dat hun dit uiteindelijk tegen is gevallen.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True