{"id":20378,"date":"2002-11-18T01:00:44","date_gmt":"2002-11-18T00:00:44","guid":{"rendered":"http:\/\/www.planet3dnow.de\/cms\/?p=20378"},"modified":"2015-10-07T08:32:26","modified_gmt":"2015-10-07T06:32:26","slug":"doping-fuer-cpus-moeglichkeiten-der-leistungssteigerung","status":"publish","type":"post","link":"https:\/\/www.planet3dnow.de\/cms\/20378-doping-fuer-cpus-moeglichkeiten-der-leistungssteigerung\/","title":{"rendered":"Doping f\u00fcr CPUs \u2014 M\u00f6glichkeiten der Leistungssteigerung"},"content":{"rendered":"<p><\/p><h3>Einleitung<\/h3><br>\nEinen neu\u00aden Com\u00adpu\u00adter zu kau\u00adfen, ist etwas sch\u00f6\u00adnes. Man inves\u00adtiert oft\u00admals viel Geld in teu\u00adre Hard\u00adware, in der Hoff\u00adnung, dass die\u00adse m\u00f6g\u00adlichst lan\u00adge ihren Dienst leis\u00adtet. F\u00fcr den Heim\u00adan\u00adwen\u00adder oder Fir\u00admen-PC ist dies auch der Fall, neue Hard\u00adware kann hier bis zu f\u00fcnf Jah\u00adre lang die Bed\u00fcrf\u00adnis\u00adse des Besit\u00adzers durch\u00adaus befrie\u00addi\u00adgen. Nicht so jedoch, wenn aktu\u00adel\u00adle Com\u00adpu\u00adter\u00adspie\u00adle in den Mit\u00adtel\u00adpunkt des Ein\u00adsat\u00adzes r\u00fccken, oder gar Anwen\u00addun\u00adgen wie Video\u00adbe\u00adar\u00adbei\u00adtung, 3D-Ren\u00adde\u00adring oder wis\u00adsen\u00adschaft\u00adli\u00adche Berech\u00adnun\u00adgen. Denn pl\u00f6tz\u00adlich kann der Com\u00adpu\u00adter gar nicht mehr schnell genug sein, es muss immer das schnells\u00adte und somit auch teu\u00aders\u00adte sein. Denn Zeit ist ja bekannt\u00adlich Geld. Um wie\u00adder auf den Heim\u00adan\u00adwen\u00adder zur\u00fcck\u00adzu\u00adkom\u00admen: Die\u00adser pro\u00adfi\u00adtiert hier\u00advon nat\u00fcr\u00adlich enorm. Die \u2014 vor allem in den letz\u00adten Jah\u00adren \u2014 enorm gestie\u00adge\u00adnen Anfor\u00adde\u00adrun\u00adgen an moder\u00adne Computer\/Hardware haben dazu gef\u00fchrt, dass heut\u00adzu\u00adta\u00adge bereits 2+ GHz Com\u00adpu\u00adter im Super\u00admarkt erh\u00e4lt\u00adlich sind und \u00fcber Rechen\u00adpower ver\u00adf\u00fc\u00adgen, \u00fcber die vor eini\u00adgen Jah\u00adren die Wis\u00adsen\u00adschaft\u00adler noch im Krei\u00adse gesprun\u00adgen w\u00e4ren. Jedoch ist bald die Gren\u00adze erreicht, denn es gibt einen Feind bei der sich ewig wei\u00adter dre\u00adhen\u00adden Per\u00adfor\u00adman\u00adce\u00adspi\u00adra\u00adle: Die Phy\u00adsik. Immer h\u00f6he\u00adre Takt\u00adra\u00adten wan\u00addeln immer mehr Ener\u00adgie in W\u00e4r\u00adme um, immer klei\u00adne\u00adre Struk\u00adtu\u00adren erh\u00f6\u00adhen die Ener\u00adgie pro Fl\u00e4\u00adche, sowie n\u00e4hern die Struk\u00adtu\u00adren dem Atom\u00addurch\u00admes\u00adser&nbsp;an.\n<p>Dass die\u00adse Takt\u00adspi\u00adra\u00adle sich nicht ewig wei\u00adter\u00addre\u00adhen kann, wis\u00adsen auch die bei\u00adden gr\u00f6\u00df\u00adten Halb\u00adlei\u00adter\u00adfir\u00admen Intel und <span class=\"caps\">AMD<\/span>: Bei zuk\u00fcnf\u00adti\u00adgen Pro\u00adduk\u00adten will man zu ande\u00adren Mit\u00adteln grei\u00adfen, um die Gesamt\u00adleis\u00adtung zu stei\u00adgern. Der Giga\u00adhertz\u00adwahn scheint abzu\u00adk\u00fch\u00adlen, es kehrt Ruhe und Ver\u00adnunft ein in den Labors der Chip\u00adher\u00adstel\u00adler. Zeit, einen Blick auf vor\u00adhan\u00adde\u00adne Hebel und zuk\u00fcnf\u00adti\u00adge Tech\u00adni\u00adken zu wer\u00adfen, die vor\u00adhan\u00adde\u00adne Tran\u00adsis\u00adto\u00adren m\u00f6g\u00adlichst effi\u00adzi\u00adent aus\u00adzu\u00adnut\u00adzen und somit die Leis\u00adtung stei\u00adgern, ohne die Ener\u00adgie\u00adum\u00adwand\u00adlung in W\u00e4r\u00adme auf neu\u00aden Spit\u00adzen\u00adwer\u00adte zu treiben.<br>\n<!--nextpage--><br>\nDie Situa\u00adti\u00adon heu\u00adte hat die Pro\u00adzes\u00adso\u00adren bereits recht nah an die Gren\u00adzen der Phy\u00adsik gebracht: Mit zuk\u00fcnf\u00adti\u00adgen Struk\u00adtu\u00adren von 90nm und weni\u00adger, n\u00e4hern wir uns mehr und mehr dem Durch\u00admes\u00adser von Ato\u00admen; die W\u00e4r\u00adme\u00adab\u00adga\u00adbe der aktu\u00adel\u00adlen Flagg\u00adschif\u00adfe von Intel und <span class=\"caps\">AMD<\/span> liegt bei rund <span class=\"caps\">70W<\/span> pro cm2 und der Aspekt der ange\u00admes\u00adse\u00adnen K\u00fch\u00adlung r\u00fcckt unauf\u00adhalt\u00adsam immer wei\u00adter ins Zen\u00adtrum der Aufmerksamkeit.<\/p>\n<p>Jedem Inge\u00adnieur ist klar, dass die Situa\u00adti\u00adon recht ange\u00adspannt ist und alter\u00adna\u00adti\u00adve L\u00f6sun\u00adgen drin\u00adgend gefun\u00adden wer\u00adden m\u00fcs\u00adsen. Es exis\u00adtie\u00adren eini\u00adge Hebel, um die Per\u00adfor\u00admance effek\u00adtiv stei\u00adgern zu k\u00f6nnen:<\/p>\n<p><b>Takt\u00adfre\u00adquenz<\/b><br>\nDie Flagg\u00adschif\u00adfe von Intel und <span class=\"caps\">AMD<\/span> n\u00e4hern sich kon\u00adti\u00adnu\u00adier\u00adlich der 3 GHz Mar\u00adke (Intel real, <span class=\"caps\">AMD<\/span> per Quan\u00adtispeed). Der <span class=\"caps\">K7<\/span> Kern scheint hier mitt\u00adler\u00adwei\u00adle an sei\u00adner Gren\u00adze ange\u00adlangt zu sein, takt\u00adm\u00e4\u00ad\u00dfig sind kei\u00adne signi\u00adfi\u00adkan\u00adten Wei\u00adter\u00adent\u00adwick\u00adlun\u00adgen mehr zu erwar\u00adten. Beim <span class=\"caps\">P4<\/span> Kern sieht die Situa\u00adti\u00adon deut\u00adlich bes\u00adser aus, schlie\u00df\u00adlich war die\u00adser von Anfang an nicht auf Effi\u00adzi\u00adenz aus\u00adge\u00adlegt (der Pen\u00adti\u00adum 4 ist bei glei\u00adcher Takt\u00adfre\u00adquenz deut\u00adlich lang\u00adsa\u00admer als sein Vor\u00adg\u00e4n\u00adger), son\u00addern auf hohe Takt\u00adra\u00adten. Vor\u00adsich\u00adti\u00adge Absch\u00e4t\u00adzun\u00adgen spre\u00adchen von etwa 4 GHz, die der <span class=\"caps\">P4<\/span> Kern errei\u00adchen k\u00f6nn\u00adte. Ob in sei\u00adner jet\u00adzi\u00adgen Form oder ein wei\u00adte\u00adres Mal \u00fcber\u00adar\u00adbei\u00adtet, sei mal dahingestellt<\/p>\n<p>Es scheint also, als ob Intel die bes\u00adse\u00adren Kar\u00adten h\u00e4t\u00adte. Mit\u00adtel\u00adfris\u00adtig betrach\u00adtet jedoch steht <span class=\"caps\">AMD<\/span> bes\u00adser da, schlie\u00df\u00adlich lau\u00adert hier der \u201cHam\u00admer\u201d, <span class=\"caps\">AMD<\/span> n\u00e4chs\u00adte Pro\u00adzes\u00adsor-Gene\u00adra\u00adti\u00adon, bereits in der Pipe\u00adline und steht rela\u00adtiv kurz vor sei\u00adner Ver\u00ad\u00f6f\u00adfent\u00adli\u00adchung. Nicht die 64-Bit Erwei\u00adte\u00adrung des zuk\u00fcnf\u00adti\u00adgen AMD-Pro\u00adzes\u00adsors wird jedoch die Geschwin\u00addig\u00adkeit machen, eben\u00adso\u00adwe\u00adnig hohe Takt\u00adfre\u00adquenz. Ent\u00adschei\u00addend wird die Effi\u00adzi\u00adenz des <span class=\"caps\">K8<\/span> Core wer\u00adden: M\u00f6g\u00adlichst viel mit m\u00f6g\u00adlichst wenig erreichen.<br>\nDer Pen\u00adti\u00adum 4 ist gra\u00adde mal zwei Jah\u00adre alt, sei\u00adne urspr\u00fcng\u00adli\u00adche Takt\u00adfre\u00adquenz hat sich mitt\u00adler\u00adwei\u00adle mehr als ver\u00addop\u00adpelt und den\u00adnoch wird er bald am Ende sein. Die Geschich\u00adte der Mikro\u00adpro\u00adzes\u00adso\u00adren zeigt, dass es etwa f\u00fcnf bis sie\u00adben Jah\u00adre dau\u00adert, bis ein voll\u00adst\u00e4n\u00addig rund\u00aderneu\u00ader\u00adtes Pro\u00adzes\u00adsor\u00adde\u00adsign markt\u00adreif und auch wirk\u00adlich fer\u00adtig ist. Der Nach\u00adfol\u00adger des Pen\u00adti\u00adum 4 wird sich also ent\u00adwe\u00adder noch eini\u00adges an Zeit las\u00adsen m\u00fcs\u00adsen, oder \u2014 wie der Pen\u00adti\u00adum 4 urspr\u00fcng\u00adlich auch \u2014 fr\u00fch\u00adreif auf den Markt gewor\u00adfen und erst im Lau\u00adfe der Zeit so rich\u00adtig auf Tou\u00adren gebracht wer\u00adden m\u00fcssen.<\/p>\n<p><b>Stei\u00adge\u00adrung der&nbsp;<span class=\"caps\">IPC<\/span><\/b><br>\nDie <span class=\"caps\">IPC<\/span>, aus\u00adge\u00adspro\u00adchen \u201cIns\u00adtruc\u00adtions per clock cycle\u201d gibt an, wie\u00advie\u00adle Instruk\u00adtio\u00adnen der Pro\u00adzes\u00adsor pro Takt\u00adsi\u00adgnal gleich\u00adzei\u00adtig abar\u00adbei\u00adten kann. Je h\u00f6her die\u00adser Wert aus\u00adf\u00e4llt, des\u00adto h\u00f6her der Durch\u00adsatz an Instruk\u00adtio\u00adnen und des\u00adto bes\u00adser die Leis\u00adtung des Pro\u00adzes\u00adsors. Die <span class=\"caps\">IPC<\/span> kann durch ver\u00adschie\u00adde\u00adne Hebel beein\u00adflusst wer\u00adden, ist jedoch in sich sel\u00adber eben\u00adfalls ein Hebel zum Zweck der Per\u00adfor\u00adman\u00adcestei\u00adge\u00adrung. Ein m\u00f6g\u00adli\u00adcher Ansatz w\u00e4ren bei\u00adspiels\u00adwei\u00adse das Hin\u00adzu\u00adf\u00fc\u00adgen von Funktionseinheiten.<\/p>\n<p>Auch hier steht <span class=\"caps\">AMD<\/span> etwas bes\u00adser da als Intel. Der Pen\u00adti\u00adum 4 war \u2014 wie bereits erw\u00e4hnt \u2014 von Anfang an nicht auf Effi\u00adzi\u00adenz, son\u00addern hohe Takt\u00adra\u00adten aus\u00adge\u00adlegt. Im Gegen\u00adsatz hier\u00adzu steht der <span class=\"caps\">AMD<\/span> <span class=\"caps\">K7<\/span>, der auch trotz nied\u00adri\u00adge\u00adrem Takt dem Kon\u00adkur\u00adren\u00adten in den meis\u00adten Auf\u00adga\u00adben gleich\u00adwer\u00adtig wenn nicht gar \u00fcber\u00adle\u00adgen ist. Die\u00adse Tat\u00adsa\u00adche bringt <span class=\"caps\">AMD<\/span> seit dem Ath\u00adlon <span class=\"caps\">XP<\/span> mit dem ein\u00adge\u00adf\u00fchr\u00adten P\u2011Rating (Per\u00adfor\u00admance-Rating) zum Aus\u00addruck. Der Pro\u00adzes\u00adsor wird bei\u00adspiels\u00adwei\u00adse trotz 1.8 GHz rea\u00adlem Takt als <span class=\"caps\">XP<\/span> 2200+ ver\u00adkauft, um dem K\u00e4u\u00adfer n\u00e4her\u00adzu\u00adbrin\u00adgen, dass ein Pro\u00adzes\u00adsor aus dem Hau\u00adse der Kon\u00adkur\u00adrenz min\u00addes\u00adtens mit 2.2 GHz getak\u00adtet sein muss, um mit die\u00adsem Pro\u00adzes\u00adsor kon\u00adkur\u00adrie\u00adren zu k\u00f6nnen.<br>\nGanz so real sind die\u00adse Wer\u00adte aller\u00addings nicht, ska\u00adliert doch der Pen\u00adti\u00adum 4 bei h\u00f6he\u00adrem Takt deut\u00adlich bes\u00adser. Auch h\u00e4ngt die tat\u00ads\u00e4ch\u00adli\u00adche Geschwin\u00addig\u00adkeit sehr stark von den ver\u00adwen\u00adde\u00adten Bench\u00admarks ab: Mit eini\u00adgen kommt der <span class=\"caps\">K7<\/span> bes\u00adser zurecht, mit ande\u00adren der <span class=\"caps\">P4<\/span>. Nicht nur des\u00adhalb bekam <span class=\"caps\">AMD<\/span> bei der Ein\u00adf\u00fch\u00adrung der Quan\u00adtiSpeed Zahl auch kr\u00e4f\u00adti\u00adgen Gegen\u00adwind aus dem Exper\u00adten\u00adla\u00adger zu sp\u00fcren.<\/p>\n<p>Im Hin\u00adblick auf die Zukunft kann man \u00fcber die <span class=\"caps\">IPC<\/span> noch nicht son\u00adder\u00adlich viel sagen. In den Intel-Labs wird der\u00adzeit ein Mobil\u00adpro\u00adzes\u00adsor ent\u00adwi\u00adckelt, der sich als wah\u00adres IPC-Wun\u00adder her\u00adaus\u00adstel\u00adlen k\u00f6nn\u00adte. Der sog. Bani\u00adas soll bei bis zu 1 GHz nied\u00adri\u00adge\u00adrem Takt sei\u00adnem gro\u00ad\u00dfen Bru\u00adder Pen\u00adti\u00adum 4 teil\u00adwei\u00adse deut\u00adlich \u00fcber\u00adle\u00adgen&nbsp;sein.<br>\nSei\u00adtens <span class=\"caps\">AMD<\/span> wird mit dem <span class=\"caps\">K8<\/span> h\u00f6chst\u00adwahr\u00adschein\u00adlich eben\u00adfalls eine gestei\u00adger\u00adte Effi\u00adzi\u00adenz zu erwar\u00adten sein, was man wei\u00adter\u00adhin durch eine Quan\u00adtiSpeed-Zahl zum Aus\u00addruck brin\u00adgen will. Letzt\u00adend\u00adlich bringt eine Dis\u00adkus\u00adsi\u00adon jedoch jetzt noch nicht viel, bevor die Pro\u00adzes\u00adso\u00adren nicht ver\u00adf\u00fcg\u00adbar sind, kann man weder auf die Effek\u00adti\u00advi\u00adt\u00e4t noch die Effi\u00adzi\u00adenz schlie\u00dfen.<\/p>\n<p><!--nextpage--><br>\n<b>Erh\u00f6\u00adhung des Bus- und Speichertakts<\/b><br>\nEine wei\u00adte\u00adre recht popu\u00adl\u00e4\u00adre Art die Leis\u00adtung zu stei\u00adgern, ist das Ver\u00adh\u00e4lt\u00adnis zwi\u00adschen inter\u00adnen und exter\u00adnen Takt zu ver\u00adrin\u00adgern. Heu\u00adti\u00adge Pro\u00adzes\u00adso\u00adren ver\u00adf\u00fc\u00adgen in der Regel \u00fcber mehr\u00adstu\u00adfi\u00adge Cache-Hier\u00adar\u00adchien. Der Level 1 Cache (<span class=\"caps\">L1<\/span> Data und <span class=\"caps\">L1<\/span> Code) befin\u00addet sich direkt bei den Funk\u00adti\u00adons\u00adein\u00adhei\u00adten, hat eine sehr nied\u00adri\u00adge Latenz sowie einen sehr hohen Durch\u00adsatz. Zugrif\u00adfe auf den <span class=\"caps\">L1<\/span> Cache erfol\u00adgen, je nach Pro\u00adzes\u00adsor, inner\u00adhalb drei bis acht Takt\u00adzy\u00adklen. Man nennt dies die soge\u00adnann\u00adte \u201cLatenz\u201d.<br>\nDahin\u00adter sitzt, mitt\u00adler\u00adwei\u00adle eben\u00adfalls auf dem Die inte\u00adgriert, der Level 2 Cache. Die\u00adser ver\u00adf\u00fcgt \u00fcber eine deut\u00adlich h\u00f6he\u00adre Latenz von \u00fcber zehn Takt\u00adzy\u00adklen und einen, gegen\u00ad\u00fcber dem L1-Cache, recht gerin\u00adgen Durch\u00adsatz. Der <span class=\"caps\">L1<\/span> Cache ist in der Regel \u201cWri\u00adte Through\u201d, so dass alle Infor\u00adma\u00adtio\u00adnen aus dem <span class=\"caps\">L1<\/span> Cache auch gleich\u00adzei\u00adtig in den <span class=\"caps\">L2<\/span> Cache geschrie\u00adben werden.<br>\nDahin\u00adter wie\u00adder\u00adum sitzt ein even\u00adtu\u00adell vor\u00adhan\u00adde\u00adner exter\u00adner Level 3 Cache, was sich bei Desk\u00adtop-Pro\u00adzes\u00adso\u00adren jedoch bis\u00adher bis auf den PPC75xx (kurz: <span class=\"caps\">G4<\/span>) nicht durch\u00adge\u00adsetzt hat. An letz\u00adter Stel\u00adle steht nun der eigent\u00adli\u00adche Arbeits\u00adspei\u00adcher selber.<\/p>\n<p>Zugrif\u00adfe auf den Spei\u00adcher sind der\u00adart orga\u00adni\u00adsiert, dass sie immer vom schnells\u00adten zum lang\u00adsams\u00adten Cache erfol\u00adgen. Erst wenn ein \u201ccache miss\u201d auf\u00adtritt (cache miss bedeu\u00adtet, dass die ange\u00adfor\u00adder\u00adten Daten sich in kei\u00adnem der Caches befin\u00adden), wird auf den Arbeits\u00adspei\u00adcher zur\u00fcck\u00adge\u00adgrif\u00adfen. Moder\u00adne Spei\u00adcher\u00admo\u00addu\u00adle wer\u00adden mit bis zu 533 MHz betrie\u00adben (<span class=\"caps\">PC1066<\/span> <span class=\"caps\">RDRAM<\/span>), in der Regel sind heu\u00adti\u00adge PCs jedoch mit dem weit\u00adaus g\u00fcns\u00adti\u00adge\u00adrem, jedoch etwas lang\u00adsa\u00adme\u00adrem <span class=\"caps\">DDR-SDRAM<\/span> aus\u00adge\u00adstat\u00adtet, wel\u00adches laut Spe\u00adzi\u00adfi\u00adka\u00adti\u00adon bis zu 166 MHz schnell sein&nbsp;darf.<br>\nDer Zugriff auf den Arbeits\u00adspei\u00adcher l\u00e4uft bei allen heu\u00adte ver\u00adf\u00fcg\u00adba\u00adren Pro\u00adzes\u00adso\u00adren \u00fcber den Chip\u00adsatz, ergo \u00fcber den Front Side Bus, kurz <span class=\"caps\">FSB<\/span>. Die\u00adser betr\u00e4gt beim Ath\u00adlon effek\u00adtiv 266 oder 333 MHz (<span class=\"caps\">DDR-FSB<\/span>), beim Pen\u00adti\u00adum 4 effek\u00adtiv 400 oder 533 MHz (<span class=\"caps\">QDR-FSB<\/span>) und bei Apple\u2019s aktu\u00adel\u00adlen Mac\u00adin\u00adtoshs zwi\u00adschen 100 MHz <span class=\"caps\">SDR<\/span> (iMac, eMac, iBook) \u00fcber 133 MHz <span class=\"caps\">SDR<\/span> (Power\u00adMac <span class=\"caps\">DP867<\/span>, Power\u00adBook) bis hin zu 166 MHz <span class=\"caps\">SDR<\/span> (Power\u00adMac <span class=\"caps\">DP1000<\/span> und <span class=\"caps\">DP1250<\/span>). So hoch die\u00adse Zah\u00adlen auch erschei\u00adnen m\u00f6gen, im Ver\u00adgleich zu 2 GHz Pro\u00adzes\u00adsor\u00adtakt ist dies im bes\u00adten Fal\u00adle gra\u00adde mal ein Ver\u00adh\u00e4lt\u00adnis von 4:1. Bei Spei\u00adcher\u00adzu\u00adgrif\u00adfen muss der Pro\u00adzes\u00adsor also hun\u00adder\u00adte von Zyklen mit Nichts\u00adtun ver\u00adgeu\u00adden, bis die Daten bereit lie\u00adgen und ver\u00adar\u00adbei\u00adtet wer\u00adden k\u00f6n\u00adnen. Je nied\u00adri\u00adger also das Ver\u00adh\u00e4lt\u00adnis zwi\u00adschen inter\u00adnem und exter\u00adnem Takt, des\u00adto weni\u00adger Takt\u00adzy\u00adklen muss der Pro\u00adzes\u00adsor bei Spei\u00adcher\u00adzu\u00adgrif\u00adfen war\u00adten (wie\u00adder\u00adum im Ver\u00adh\u00e4lt\u00adnis zwi\u00adschen inter\u00adnem und exter\u00adnem Takt betrach\u00adtet) und des\u00adto fr\u00fc\u00adher steht er f\u00fcr wei\u00adte\u00adre Berech\u00adnun\u00adgen bereit.<br>\nAus die\u00adsem Grund ist ein 1 GHz Pro\u00adzes\u00adsor der mit 166 MHz <span class=\"caps\">FSB<\/span> betrie\u00adben wird schnel\u00adler, als der glei\u00adche Pro\u00adzes\u00adsor wenn er mit 133 MHz <span class=\"caps\">FSB<\/span> betrie\u00adben&nbsp;wird.<\/p>\n<p>Als klei\u00adner Nach\u00adsatz sei noch hin\u00adzu\u00adge\u00adf\u00fcgt, dass eine Erh\u00f6\u00adhung des Spei\u00adchert\u00adakts nicht zwin\u00adgend zur Leis\u00adtungs\u00adstei\u00adge\u00adrung f\u00fch\u00adren muss. Ein sehr gutes Bei\u00adspiel f\u00fcr Sinn\u00adlo\u00adsig\u00adkeit stel\u00adlen die aktu\u00adel\u00adlen Power\u00adMacs von Apple dar. Der Arbeits\u00adspei\u00adcher wird im DDR-Ver\u00adfah\u00adren betrie\u00adben, es wer\u00adden also zwei Bit pro Takt\u00adsi\u00adgnal \u00fcber\u00adtra\u00adgen. Im Ver\u00adgleich zu den Quick\u00adSil\u00adver Power\u00adMacs, also den direk\u00adten Vor\u00adg\u00e4n\u00adgern der heu\u00adti\u00adgen Model\u00adle, stellt dies eine Ver\u00addopp\u00adlung der RAM-Band\u00adbrei\u00adte dar und m\u00fcss\u00adte, obi\u00adger Erkl\u00e4\u00adrung zufol\u00adge, auf\u00adgrund des auf die H\u00e4lf\u00adte ver\u00adrin\u00adger\u00adten Ver\u00adh\u00e4lt\u00adnis\u00adses zwi\u00adschen inter\u00adnem und exter\u00adnem Takt zu einer deut\u00adli\u00adchen Leis\u00adtungs\u00adstei\u00adge\u00adrung f\u00fchren.<br>\nJedoch gibt es zwi\u00adschen dem Dual 1 GHz mit <span class=\"caps\">SDR-SDRAM<\/span> und dem mit <span class=\"caps\">DDR-SDRAM<\/span> nur mini\u00adma\u00adle Unter\u00adschie\u00adde. Der Grund liegt in der Art und Wei\u00adse, wie der Pro\u00adzes\u00adsor auf den Arbeits\u00adspei\u00adcher zugreift. Denn damit er auch die vol\u00adle Band\u00adbrei\u00adte des Arbeits\u00adspei\u00adchers nut\u00adzen kann, muss er mit eben die\u00adser Band\u00adbrei\u00adte dar\u00adauf zugrei\u00adfen k\u00f6n\u00adnen. Beim <span class=\"caps\">AMD<\/span> Ath\u00adlon ist dies dank dem <span class=\"caps\">EV6<\/span> Pro\u00adto\u00adkoll m\u00f6g\u00adlich, der Zugriff auf den <span class=\"caps\">DDR266<\/span>\/<span class=\"caps\">DDR333<\/span> Arbeits\u00adspei\u00adcher erfolgt mit 266\/333 MHz. Beim <span class=\"caps\">G4<\/span> Pro\u00adzes\u00adsor in Apple\u2019s Power\u00adMac sieht die Situa\u00adti\u00adon jedoch erb\u00e4rm\u00adlich aus, der Zugriff auf den <span class=\"caps\">DDR266<\/span>\/<span class=\"caps\">DDR333<\/span> Arbeits\u00adspei\u00adcher erfolgt hier ledig\u00adlich mit 133\/166 MHz wie bis\u00adher auch. Sinn\u00advoll w\u00e4re gewe\u00adsen, auch das \u00dcber\u00adtra\u00adgungs\u00adpro\u00adto\u00adkoll zu ver\u00ad\u00e4n\u00addern und nicht nur die Band\u00adbrei\u00adte des Arbeits\u00adspei\u00adchers zu erh\u00f6hen.<\/p>\n<p><b>Ver\u00adgr\u00f6\u00ad\u00dfe\u00adrung und Opti\u00admie\u00adrung der Caches<\/b><br>\nKamen die ers\u00adten ver\u00adf\u00fcg\u00adba\u00adren x86 Pro\u00adzes\u00adso\u00adren noch ohne jeg\u00adli\u00adchen Cache, so befin\u00adden sich heu\u00adte kom\u00adbi\u00adniert bis zu \u00fcber einem hal\u00adben Mega\u00adbyte die\u00adser schnel\u00adlen Zwi\u00adschen\u00adspei\u00adchern im Pro\u00adzes\u00adsor\u00adkern (bei Ser\u00adver\u00adpro\u00adzes\u00adso\u00adren auch deut\u00adlich mehr). Der Grund ist ganz ein\u00adfach und wie bereits erw\u00e4hnt: Um die uns\u00e4g\u00adlich lang\u00adsa\u00admen Spei\u00adcher\u00adzu\u00adgrif\u00adfe m\u00f6g\u00adlichst zu ver\u00admei\u00adden, wer\u00adden die ben\u00f6\u00adtig\u00adten Daten vom Pro\u00adzes\u00adsor bereits vor deren Not\u00adwen\u00addig\u00adkeit in den Cache gela\u00adden und bereit\u00adge\u00adstellt. Von zu Beginn weni\u00adgen Kilo\u00adbyte <span class=\"caps\">L1<\/span> Cache, ver\u00adf\u00fc\u00adgen heu\u00adti\u00adge Ser\u00adver\u00adpro\u00adzes\u00adso\u00adren \u00fcber drei\u00adstu\u00adfi\u00adge Cache-Hier\u00adar\u00adchien mit bis zu \u00fcber <span class=\"caps\">128MB<\/span> kom\u00adbi\u00adnier\u00adtem Cache (so bei\u00adspiels\u00adwei\u00adse der <span class=\"caps\">IBM<\/span> Power4 Pro\u00adzes\u00adsor mit <span class=\"caps\">128MB<\/span> L3-Cache, bis zu <span class=\"caps\">48MB<\/span> L2-Cache (kom\u00adbi\u00adniert) und \u00fcber <span class=\"caps\">1MB<\/span> L1-Cache (kom\u00adbi\u00adniert).<\/p>\n<p>Mit dem Pen\u00adti\u00adum 4 hat Intel ein neu\u00ades Funk\u00adti\u00adons\u00adprin\u00adzip des <span class=\"caps\">L1<\/span> Ins\u00adtruc\u00adtion Cache ein\u00adge\u00adf\u00fchrt, den sog. Trace Cache. Seit dem 6x86 arbei\u00adten x86-Pro\u00adzes\u00adso\u00adren extern wie CISC-Pro\u00adzes\u00adso\u00adren mit kom\u00adple\u00adxem Befehls\u00adsatz, deco\u00addie\u00adren jedoch jede Instruk\u00adti\u00adon in RISC-arti\u00adge \u00b5Ops vor ihrer Aus\u00adf\u00fch\u00adrung. Die\u00adser Vor\u00adgang der Deco\u00addie\u00adrung kos\u00adtet nat\u00fcr\u00adlich Rechen\u00adzeit und um die\u00adse zu spa\u00adren, spei\u00adchert der Pen\u00adti\u00adum 4 im 12.000 \u00b5Ops fas\u00adsen\u00adden <span class=\"caps\">L1<\/span> Trace Cache die bereits deco\u00addier\u00adten RISC-arti\u00adgen Befeh\u00adle f\u00fcr die wei\u00adte\u00adre Ver\u00adwen\u00addung&nbsp;ab.<br>\nOhne die\u00adsen Trace Cache w\u00e4re der Pen\u00adti\u00adum 4 \u00fcbri\u00adgens noch\u00admals deut\u00adlich inef\u00adfi\u00adzi\u00aden\u00adter. War\u00adum folgt im wei\u00adte\u00adren Ver\u00adlauf des Artikels.<\/p>\n<p><!--nextpage--><br>\n<b>Super\u00adska\u00adla\u00adre Arbeitsweise<\/b><br>\nDie <a href=\"http:\/\/www.planet3dnow.de\/vbulletin\/showthread.php?t=352930&amp;garpg=2\" target=\"_blank\">von-Neu\u00admann Archi\u00adtek\u00adtur<\/a> f\u00fcr Mikro\u00adpro\u00adzes\u00adso\u00adren defi\u00adniert einen Com\u00adpu\u00adter sehr genau. So hat ein von-Neu\u00admann Pro\u00adzes\u00adsor strikt seri\u00adell und immer nach bestimm\u00adtem Sche\u00adma zu arbei\u00adten. Wer mit der von-Neu\u00admann Archi\u00adtek\u00adtur noch nicht ver\u00adtraut ist, dem sei emp\u00adfoh\u00adlen, dem Link zu fol\u00adgen, schlie\u00df\u00adlich stellt die\u00adse Archi\u00adtek\u00adtur bis heu\u00adte die Grund\u00adla\u00adge jeg\u00adli\u00adcher Mikro\u00adpro\u00adzes\u00adso\u00adren&nbsp;dar.<\/p>\n<p>Mit einem strikt die\u00adser Archi\u00adtek\u00adtur fol\u00adgen\u00adden Mikro\u00adpro\u00adzes\u00adsor w\u00fcr\u00adde man jedoch nie\u00admals eine <span class=\"caps\">IPC<\/span> &gt; 1 errei\u00adchen k\u00f6n\u00adnen. Die Tat\u00adsa\u00adche, dass heu\u00adti\u00adge Pro\u00adzes\u00adso\u00adren einen <span class=\"caps\">IPC<\/span> \u00bb 1 haben, gr\u00fcn\u00addet schlicht und ergrei\u00adfend auf der Tat\u00adsa\u00adche, dass die Inge\u00adnieu\u00adre die von-Neu\u00admann Archi\u00adtek\u00adtur nach eige\u00adnen Vor\u00adstel\u00adlung etwas ver\u00adbo\u00adgen haben und den Mikro\u00adpro\u00adzes\u00adso\u00adren, begin\u00adnend mit dem Intel Pen\u00adti\u00adum (586), die super\u00adska\u00adla\u00adre Arbeits\u00adwei\u00adse bei\u00adgebracht haben.<br>\nEin super\u00adska\u00adla\u00adrer Mikro\u00adpro\u00adzes\u00adsor unter\u00adschei\u00addet sich haupt\u00ads\u00e4ch\u00adlich im Leit\u00adwerk von einem nicht-super\u00adska\u00adla\u00adren Mikro\u00adpro\u00adzes\u00adsor. So teilt die\u00adses einer Rechen\u00adein\u00adheit nicht mehr ledig\u00adlich eine Instruk\u00adti\u00adon pro Takt zu, son\u00addern gleich meh\u00adre\u00adre unter\u00adschied\u00adli\u00adche Instruk\u00adtio\u00adnen f\u00fcr meh\u00adre\u00adre unter\u00adschied\u00adli\u00adche Rechen\u00adein\u00adhei\u00adten. Der Mikro\u00adpro\u00adzes\u00adsor ist somit in der Lage, meh\u00adre\u00adre Instruk\u00adtio\u00adnen par\u00adal\u00adlel abzu\u00adar\u00adbei\u00adten, solan\u00adge die\u00adse oder ihr Ergeb\u00adnis nicht von\u00adein\u00adan\u00adder abh\u00e4n\u00adgig sind. Somit kann ein zwei\u00adfach super\u00adska\u00adla\u00adrer Mikro\u00adpro\u00adzes\u00adsor bei glei\u00adchem Takt im Ide\u00adal\u00adfall dop\u00adpelt so vie\u00adle Instruk\u00adtio\u00adnen pro Sekun\u00adde abar\u00adbei\u00adten, wie ein seri\u00adel\u00adler Mikroprozessor.<br>\nDie\u00adser Effekt wird erreicht, indem an unter\u00adschied\u00adli\u00adchen Stel\u00adlen der Mikro\u00adpro\u00adzes\u00adsor opti\u00admiert wird. So muss bei\u00adspiels\u00adwei\u00adse der Deco\u00adder mehr als nur eine Instruk\u00adti\u00adon pro Takt\u00adzy\u00adklus deco\u00addie\u00adren k\u00f6n\u00adnen, es m\u00fcs\u00adsen meh\u00adre\u00adre von\u00adein\u00adan\u00adder unab\u00adh\u00e4n\u00adgi\u00adge Rechen\u00adein\u00adhei\u00adten vor\u00adhan\u00adden sein und auch die inter\u00adne Band\u00adbrei\u00adte muss stim\u00admen. So ver\u00adsau\u00adern bei\u00adspiels\u00adwei\u00adse im Fal\u00adle des Pen\u00adti\u00adum 4 pro Takt\u00adzy\u00adklus sechs Rechen\u00adein\u00adhei\u00adten, da der Trace-Cache ledig\u00adlich einen Durch\u00adsatz von 3 \u00b5Ops\/Takt erreicht.<\/p>\n<p>Die ers\u00adte Imple\u00admen\u00adtie\u00adrung super\u00adska\u00adla\u00adrer Arbeits\u00adwei\u00adse fand im 586 (Intel Pen\u00adti\u00adum) statt, der grund\u00ads\u00e4tz\u00adlich nicht mehr ist, als ein super\u00adska\u00adla\u00adrer 80486 mit zwei\u00adstu\u00adfi\u00adgem Deco\u00adder. Die sog. U\u2011V Struk\u00adtur des Deco\u00adders wur\u00adde als\u00adbald von der 4\u20131\u20111 Struk\u00adtur des Deco\u00adders des 686 (Intel Pen\u00adti\u00adum Pro), der nun drei\u00adstu\u00adfig arbei\u00adtet, abgel\u00f6st.<\/p>\n<p><b>Out-of-order Exe\u00adcu\u00adti\u00adon<\/b><br>\nEine wei\u00adte\u00adre M\u00f6g\u00adlich\u00adkeit der Lauf\u00adzeit\u00adop\u00adti\u00admie\u00adrung ist die sog. Out-of-Order Exe\u00adcu\u00adti\u00adon (zu Deutsch: \u201cAus\u00adf\u00fch\u00adrung au\u00dfer\u00adhalb der Rei\u00adhen\u00adfol\u00adge\u201d). Sie bie\u00adtet einen enor\u00admen Zuwachs an Geschwin\u00addig\u00adkeit, denn pl\u00f6tz\u00adlich k\u00f6n\u00adnen Instruk\u00adtio\u00adnen bereits aus\u00adge\u00adf\u00fchrt wer\u00adden auch wenn sie noch gar nicht an der Rei\u00adhe w\u00e4ren (Stich\u00adwort: Seri\u00adel\u00adler Pro\u00adgramm\u00adfluss der von-Neu\u00admann Archi\u00adtek\u00adtur). Um dies bes\u00adser ver\u00adst\u00e4nd\u00adlich zu machen, ein klei\u00adnes Beispiel:<br>\nNeh\u00admen wir an, dass eine Instruk\u00adti\u00adon Daten aus dem Spei\u00adcher ein\u00adle\u00adsen muss. Dies f\u00fchrt dazu, dass der Pro\u00adzes\u00adsor f\u00fcr meh\u00adre\u00adre hun\u00addert bis tau\u00adsend Takt\u00adzy\u00adklen auf die Daten war\u00adten muss und qua\u00adsi zum Nichts\u00adtun ver\u00addammt ist. Gibt es jedoch in der Pipe\u00adline Instruk\u00adtio\u00adnen, die von der der\u00adzeit auf Daten aus dem Spei\u00adcher war\u00adten\u00adden Instruk\u00adti\u00adon weder abh\u00e4n\u00adgen noch mit ihr in Zusam\u00admen\u00adhang ste\u00adhen, kann der Pro\u00adzes\u00adsor die n\u00f6ti\u00adge War\u00adte\u00adzeit mit der Aus\u00adf\u00fch\u00adrung die\u00adser Instruk\u00adtio\u00adnen \u00fcberbr\u00fccken.<br>\nIn Zusam\u00admen\u00adhang mit hohem <span class=\"caps\">ILP<\/span> und <span class=\"caps\">TLP<\/span> (sie\u00adhe fol\u00adgen\u00addes Kapi\u00adtel) kann eine enor\u00adme Ver\u00adbes\u00adse\u00adrung der Per\u00adfor\u00admance, ohne not\u00adwen\u00addi\u00adge Ein\u00adgrif\u00adfe sei\u00adtens des Pro\u00adgram\u00admie\u00adrers oder Com\u00adpi\u00adlers, erreicht werden.<\/p>\n<p><!--nextpage--><br>\n<b>Pipe\u00adlining<\/b><br>\nEine wei\u00adte\u00adre Eigen\u00adschaft, ohne die moder\u00adne Pro\u00adzes\u00adso\u00adren nur einen Bruch\u00adteil ihrer Leis\u00adtung ent\u00adfal\u00adten k\u00f6nn\u00adten, ist das sog. Pipe\u00adlining. Es basiert auf dem Prin\u00adzip der gegen\u00adsei\u00adti\u00adgen Unab\u00adh\u00e4n\u00adgig\u00adkeit der ein\u00adzel\u00adnen Abar\u00adbei\u00adtungs\u00adschrit\u00adte eines von-Neu\u00admann Pro\u00adzes\u00adsors. Die\u00adser arbei\u00adtet die Zyklen des Ins\u00adtruc\u00adtion-Fetch, Ins\u00adtruc\u00adtion-Decode, Ins\u00adtruc\u00adtion-Exe\u00adcu\u00adte und Ins\u00adtruc\u00adtion-Reti\u00adre\u00adment strikt seri\u00adell ab, wohin\u00adge\u00adgen ein moder\u00adner Pro\u00adzes\u00adsor die\u00adse drei Din\u00adge theo\u00adre\u00adtisch gleich\u00adzei\u00adtig erle\u00addi\u00adgen kann, selbst\u00adver\u00adst\u00e4nd\u00adlich f\u00fcr drei unter\u00adschied\u00adli\u00adche Instruktionen.<\/p>\n<p>In der Pra\u00adxis sieht dies bei einem moder\u00adnen Mikro\u00adpro\u00adzes\u00adsor fol\u00adgen\u00adder\u00adma\u00ad\u00dfen aus: W\u00e4h\u00adrend der aktu\u00adel\u00adle Befehl aus\u00adge\u00adf\u00fchrt wird (Ins\u00adtruc\u00adtion Exe\u00adcu\u00adte), wird gleich\u00adzei\u00adtig die vor\u00adher\u00adge\u00adhen\u00adde Instruk\u00adti\u00adon in den <span class=\"caps\">L1<\/span> Data Cache geschrie\u00adben (Ins\u00adtruc\u00adtion Reti\u00adre\u00adment), die nach\u00adfol\u00adgen\u00adde Instruk\u00adti\u00adon deco\u00addiert (Ins\u00adtruc\u00adtion-Decode) und die \u00fcber\u00adn\u00e4chs\u00adte Instruk\u00adti\u00adon bereits aus dem Pro\u00adgramm\u00adfluss aus\u00adge\u00adle\u00adsen (Ins\u00adtruc\u00adtion-Fetch). Somit m\u00fcs\u00adsen die Befehls\u00adein\u00adhei\u00adten im Opti\u00admal\u00adfall nie\u00admals auf Daten war\u00adten: Sobald sie mit der Berech\u00adnung einer Instruk\u00adti\u00adon fer\u00adtig sind, steht bereits die n\u00e4chs\u00adte&nbsp;an.<\/p>\n<p><b>Branch Pre\u00addic\u00adtion<\/b><br>\nDie letz\u00adte erw\u00e4h\u00adnens\u00adwer\u00adte Opti\u00admie\u00adrung moder\u00adner Pro\u00adzes\u00adso\u00adren ist die Branch Pre\u00addic\u00adtion, zu Deutsch: Sprungvorhersage.<br>\nSpr\u00fcn\u00adge stel\u00adlen f\u00fcr Mikro\u00adpro\u00adzes\u00adso\u00adren mit Pipe\u00adline ein ernst\u00adhaf\u00adtes Pro\u00adblem dar und besch\u00e4f\u00adti\u00adgen welt\u00adweit hun\u00adder\u00adte von Infor\u00adma\u00adti\u00adkern und Inge\u00adnieu\u00adren. Bei Spr\u00fcn\u00adgen im Pro\u00adgramm\u00adfluss wird unter\u00adschie\u00adden zwi\u00adschen \u201ccon\u00addi\u00adtio\u00adnal jump\u201d und \u201cuncon\u00addi\u00adtio\u00adnal jump\u201d, zu Deutsch \u201cBeding\u00adter Sprung\u201d und \u201cUnbe\u00adding\u00adter Sprung\u201d. Letz\u00adte\u00adre sind leich\u00adter zu erken\u00adnen als Ers\u00adte\u00adre, schlie\u00df\u00adlich gibt es beim Beding\u00adten Sprung eine Bedin\u00adgung, deren Erf\u00fcl\u00adlung oder Nicht\u00ader\u00adf\u00fcl\u00adlung \u00fcber den wei\u00adte\u00adren Pro\u00adgramm\u00adfluss entscheidet.<br>\nTritt solch ein unver\u00adher\u00adge\u00adse\u00adhe\u00adner Sprung im Pro\u00adgramm\u00adfluss auf, so muss bei einem moder\u00adnen Mikro\u00adpro\u00adzes\u00adsor die gesam\u00adte Pipe\u00adline gel\u00f6scht und neu gef\u00fcllt wer\u00adden, ein Vor\u00adgang den man \u201cPipe\u00adline-Flush\u201d oder auch \u201cFlus\u00adhing the Pipe\u00adline\u201d nennt, zu Deutsch etwa \u201cAus\u00adsp\u00fc\u00adlen der Pipe\u00adline\u201d. Je l\u00e4n\u00adger die Pipe\u00adline ist, des\u00adto l\u00e4n\u00adger dau\u00adert logi\u00adscher\u00adwei\u00adse die\u00adser Vor\u00adgang, daher kommt der Sprung\u00advor\u00adher\u00adsa\u00adge bei moder\u00adnen und zuk\u00fcnf\u00adti\u00adgen Pro\u00adzes\u00adso\u00adren mit 20- und mehr-stu\u00adfi\u00adgen Pipe\u00adlines eine enor\u00adme Bedeu\u00adtung zu, deren Unter\u00adsch\u00e4t\u00adzung f\u00fcr einen Mikro\u00adpro\u00adzes\u00adsor den fr\u00fc\u00adhen Tod bedeu\u00adten&nbsp;kann.<\/p>\n<p>Eine Sprung\u00advor\u00adher\u00adsa\u00adge (Eigent\u00adlich ist dies eine fal\u00adsche \u00dcber\u00adset\u00adzung, \u201cbranch pre\u00addic\u00adtion\u201d lau\u00adtet kor\u00adrekt \u00fcber\u00adsetzt \u201cAbzwei\u00adgungs\u00advor\u00adher\u00adsa\u00adge\u201d oder \u201cVer\u00adzwei\u00adgungs\u00advor\u00adher\u00adsa\u00adge\u201d) ver\u00adsucht zu erra\u00adten, wel\u00adche Rich\u00adtung der Pro\u00adgramm\u00adfluss bei einem beding\u00adten Sprung ein\u00adle\u00adgen wird. Hier\u00adbei wer\u00adden die ver\u00adschie\u00adde\u00adnen Ver\u00adzwei\u00adgungs\u00adm\u00f6g\u00adlich\u00adkei\u00adten des Pro\u00adgramm\u00adflus\u00adses genau\u00ades\u00adtens gepr\u00fcft (der <span class=\"caps\">IBM<\/span> Power4 nimmt hier gar drei Pr\u00fc\u00adfun\u00adgen par\u00adal\u00adlel vor) und nach Wahr\u00adschein\u00adlich\u00adkei\u00adten gewich\u00adtet. Die Ver\u00adzwei\u00adgung mit der h\u00f6chs\u00adten Wahr\u00adschein\u00adlich\u00adkeit wird anschlie\u00ad\u00dfend als wei\u00adter Ver\u00adlauf des Pro\u00adgramms defi\u00adniert und die Pipe\u00adline mit den ent\u00adspre\u00adchen\u00adden Instruk\u00adtio\u00adnen gef\u00fcllt.<br>\nDoch wie das Wort \u201cWahr\u00adschein\u00adlich\u00adkeit\u201d schon sagt, gibt es kei\u00adne Garan\u00adtie, dass der Pro\u00adgramm\u00adfluss die vor\u00adher\u00adge\u00adsag\u00adte Rich\u00adtung auch wirk\u00adlich ein\u00adschl\u00e4gt. Somit wird es immer den Fall geben, dass auf\u00adgrund Ver\u00adsa\u00adgens der Sprung\u00advor\u00adher\u00adsa\u00adge-Logik, die Pipe\u00adline aus\u00adge\u00adsp\u00fclt und neu gef\u00fcllt wer\u00adden&nbsp;muss.<br>\nDie per\u00adfek\u00adte Sprung\u00advor\u00adher\u00adsa\u00adge, mit 99% Treff\u00adsi\u00adcher\u00adheit (oder gar mehr), hat bis\u00adher noch nie\u00admand kon\u00adstru\u00adie\u00adren k\u00f6n\u00adnen, Infor\u00adma\u00adti\u00adker und Inge\u00adnieu\u00adre rund um den Glo\u00adbus besch\u00e4f\u00adti\u00adgen sich mit dem Modell der \u201cSprung\u00advor\u00adher\u00adsa\u00adge\u201d. In ange\u00adse\u00adhe\u00adnen wis\u00adsen\u00adschaft\u00adli\u00adchen Maga\u00adzi\u00adnen wie dem Dr. Dobbs Jour\u00adnal oder dem <span class=\"caps\">ACM<\/span> Com\u00adpu\u00adting Sur\u00advey erschei\u00adnen regel\u00adm\u00e4\u00ad\u00dfig wis\u00adsen\u00adschaft\u00adli\u00adche Publi\u00adka\u00adtio\u00adnen, die sich dem The\u00adma anneh\u00admen und m\u00f6g\u00adli\u00adche L\u00f6sungs\u00adan\u00ads\u00e4t\u00adze vorschlagen.<\/p>\n<p><!--nextpage--><br>\nAns\u00e4t\u00adze, die Leis\u00adtung der Pro\u00adzes\u00adso\u00adren aufs Volls\u00adte aus\u00adzu\u00adrei\u00adzen, gibt es eini\u00adge. Deren Effek\u00adti\u00advi\u00adt\u00e4t und Ver\u00adbrei\u00adtung steht jedoch auf einem ganz ande\u00adren Blatt. Auch gibt es Tech\u00adni\u00adken, die zwar eine her\u00advor\u00adra\u00adgen\u00adde Effek\u00adti\u00advi\u00adt\u00e4t auf\u00adwei\u00adsen k\u00f6n\u00adnen, jedoch lei\u00adder \u00c4nde\u00adrun\u00adgen an der Hard\u00adware vor\u00adaus\u00adset\u00adzen. Somit stel\u00adlen die\u00adse L\u00f6sun\u00adgen tech\u00adnisch betrach\u00adtet die opti\u00adma\u00adle L\u00f6sung f\u00fcr neue Hard\u00adware dar. Markt\u00adtech\u00adnisch betrach\u00adtet ist die\u00adse L\u00f6sung jedoch alles ande\u00adre als opti\u00admal, schlie\u00df\u00adlich folgt im Rat\u00adten\u00adschwanz der Kon\u00adse\u00adquen\u00adzen die Inkom\u00adpa\u00adti\u00adbi\u00adli\u00adt\u00e4t zum bestehen\u00adden x86 Standard.<br>\nDie im fol\u00adgen\u00adden vor\u00adge\u00adstell\u00adten Tech\u00adni\u00adken sind geord\u00adnet, vom unters\u00adten Level, der Opti\u00admie\u00adrung ein\u00adzel\u00adner Instruk\u00adtio\u00adnen und Befeh\u00adle, \u00fcber Stei\u00adge\u00adrung des Par\u00adal\u00adle\u00adlis\u00admus von Instruk\u00adtio\u00adnen und Threads bis hin zu \u00c4nde\u00adrung des Befehls\u00adsat\u00adzes um einen m\u00f6g\u00adlichst hohen <span class=\"caps\">TLP<\/span> mit hohem <span class=\"caps\">ILP<\/span> (sie\u00adhe n\u00e4chs\u00adte Sei\u00adte) bei opti\u00adma\u00adler Anpas\u00adsung an die Hard\u00adware zu errei\u00adchen. Aber der Rei\u00adhe&nbsp;nach.<\/p>\n<p><b>Opti\u00admie\u00adrung der Com\u00adpi\u00adler auf bestimm\u00adte Befehls\u00ads\u00e4t\u00adze \/ Generationen<\/b><br>\nAuf der unters\u00adten Ebe\u00adne steht die Opti\u00admie\u00adrung ein\u00adzel\u00adner Instruk\u00adtio\u00adnen an bestehen\u00adde Hardware\/Befehlss\u00e4tze. Fr\u00fc\u00adher, als Assem\u00adbler noch Stan\u00addard\u00adspra\u00adche f\u00fcr jeden Pro\u00adgram\u00admie\u00adrer war, stell\u00adte Pro\u00adgram\u00admie\u00adren noch ech\u00adte \u201cFie\u00adsel\u00adar\u00adbeit\u201d dar. Regis\u00adter woll\u00adten ein\u00adzeln belegt, addiert oder gel\u00f6scht wer\u00adden, Spei\u00adcher sepa\u00adrat zuge\u00adwie\u00adsen, etc. Der Spruch \u201cWas man nicht mit Assem\u00adbler pro\u00adgram\u00admie\u00adren kann, muss man halt l\u00f6ten\u201d besitzt erstaun\u00adlich hohen Rea\u00adli\u00adt\u00e4ts\u00adbe\u00adzug, jeder Assem\u00adbler-Pro\u00adgram\u00admie\u00adrer wird sich l\u00e4chelnd erinnern.<br>\nMit dem Erfolg der sog. hohen Pro\u00adgram\u00admier\u00adspra\u00adchen, \u00e4nder\u00adte sich die\u00adser Zustand jedoch schlag\u00adar\u00adtig. Pl\u00f6tz\u00adlich war der Pro\u00adgram\u00admie\u00adrer nicht mehr Herr \u00fcber den im End\u00adef\u00adfekt von ihm pro\u00addu\u00adzier\u00adten Maschi\u00adnen\u00adcode, son\u00addern muss\u00adte die\u00adse Kon\u00adtrol\u00adle dem Com\u00adpi\u00adler \u00fcber\u00adtra\u00adgen (to com\u00adpi\u00adle = \u00fcber\u00adset\u00adzen, kom\u00adpi\u00adlie\u00adren; Com\u00adpi\u00adler \u00fcber\u00adset\u00adzen die Befeh\u00adle h\u00f6he\u00adrer Pro\u00adgram\u00admier\u00adspra\u00adchen in f\u00fcr den Pro\u00adzes\u00adsor ver\u00adst\u00e4nd\u00adli\u00adchen Maschi\u00adnen\u00adcode). Die Pro\u00adgram\u00admie\u00adrer sel\u00adber haben hier\u00adbei kei\u00adner\u00adlei Ein\u00adflu\u00df auf die tat\u00ads\u00e4ch\u00adli\u00adche Lauf\u00adzeit der eige\u00adnen Pro\u00adgram\u00adme und m\u00fcs\u00adsen sich auf den Com\u00adpi\u00adler verlassen.<br>\nDa der Mensch jedoch nicht per\u00adfekt ist und Pro\u00adzes\u00adso\u00adren sich best\u00e4n\u00addig wei\u00adter\u00adent\u00adwi\u00adckeln, erzeu\u00adgen Com\u00adpi\u00adler sel\u00adten per\u00adfek\u00adten Maschi\u00adnen\u00adcode und altern zudem rela\u00adtiv schnell. Den\u00adnoch darf man die Rol\u00adle der Com\u00adpi\u00adler auf kei\u00adnen Fall unter\u00adsch\u00e4t\u00adzen, denn hier liegt das gr\u00f6\u00df\u00adte, per Soft\u00adware erreich\u00adba\u00adre Opti\u00admie\u00adrungs\u00adpo\u00adten\u00adzi\u00adal wel\u00adches die zwin\u00adgend erfor\u00adder\u00adli\u00adche x86-Kom\u00adpa\u00adti\u00adbi\u00adli\u00adt\u00e4t&nbsp;wahrt.<\/p>\n<p>Com\u00adpi\u00adler arbei\u00adten auf eine bestimm\u00adte Art und Wei\u00adse: Jeder noch so kom\u00adple\u00adxe Befehl, jede noch so gro\u00ad\u00dfe, lan\u00adge oder ver\u00adschach\u00adtel\u00adte Schlei\u00adfe einer hohen Pro\u00adgram\u00admier\u00adspra\u00adche, kann in ein\u00adzel\u00adne, sog. Ele\u00admen\u00adtar\u00adbe\u00adfeh\u00adle zer\u00adlegt wer\u00adden und somit letzt\u00adend\u00adlich in Maschi\u00adnen\u00adbe\u00adfeh\u00adle. Unter\u00adschied\u00adli\u00adche Pro\u00adzes\u00adsor\u00adge\u00adne\u00adra\u00adtio\u00adnen ver\u00adar\u00adbei\u00adten jedoch ein und den\u00adsel\u00adben Maschi\u00adnen\u00adbe\u00adfehl unter Umst\u00e4n\u00adden auf kom\u00adplett unter\u00adschied\u00adli\u00adche Art und Wei\u00adse mit signi\u00adfi\u00adkant unter\u00adschied\u00adli\u00adcher Lauf\u00adzeit. Somit muss ein guter Com\u00adpi\u00adler m\u00f6g\u00adlichst vie\u00adle ver\u00adschie\u00adde\u00adne Arten der Opti\u00admie\u00adrung beherr\u00adschen, je nach Gene\u00adra\u00adti\u00adon des zu ver\u00adwen\u00adden\u00adden Ziel-Pro\u00adzes\u00adsors. So ben\u00f6\u00adtigt die i686 Archi\u00adtek\u00adtur bei\u00adspiels\u00adwei\u00adse eine kom\u00adplett ande\u00adre Rei\u00adhen\u00adfol\u00adge und Anord\u00adnung der Befeh\u00adle an den Deco\u00adder als die i786 Archi\u00adtek\u00adtur und noch anders gar die <span class=\"caps\">K7<\/span> Architektur.<br>\nLetzt\u00adend\u00adlich liegt hier das gr\u00f6\u00df\u00adte Poten\u00adzi\u00adal, auf\u00adgrund der Inkon\u00adsis\u00adtenz der Pro\u00adzes\u00adso\u00adren und ihres Befehls\u00adsat\u00adzes jedoch auch das gr\u00f6\u00df\u00adte Kon\u00adflikt\u00adpo\u00adten\u00adzi\u00adal. Schlie\u00df\u00adlich l\u00e4uft Soft\u00adware, die spe\u00adzi\u00adell f\u00fcr neue\u00adre Pro\u00adzes\u00adso\u00adren opti\u00admiert wur\u00adde (Bei\u00adspiels\u00adwei\u00adse durch Nut\u00adzung der <span class=\"caps\">SSE<\/span>\/<span class=\"caps\">SSE2<\/span> Ein\u00adhei\u00adten oder zus\u00e4tz\u00adli\u00adcher <span class=\"caps\">CISC<\/span>\/<span class=\"caps\">RISC<\/span> Befeh\u00adle) nicht immer auch auf \u00e4lte\u00adren Pro\u00adzes\u00adso\u00adren. Im Markt der ewig kom\u00adpa\u00adti\u00adblen x86-Pro\u00adzes\u00adso\u00adren ist so etwas f\u00fcr vie\u00adle Fir\u00admen nicht ver\u00adtret\u00adbar, wes\u00adhalb sich pro\u00adprie\u00adt\u00e4\u00adre Befehls\u00ader\u00adwei\u00adte\u00adrun\u00adgen auf lan\u00adge Sicht nicht durch\u00adset\u00adzen konn\u00adten. Drei bekann\u00adte Bei\u00adspie\u00adle sind <span class=\"caps\">MMX<\/span>, 3DNow! und&nbsp;<span class=\"caps\">SSE<\/span>.<\/p>\n<p><!--nextpage--><br>\n<b>Stei\u00adge\u00adrung des Ins\u00adtruc\u00adtion Level Par\u00adal\u00adle\u00adlism (<span class=\"caps\">ILP<\/span>)<\/b><br>\nEine Ebe\u00adne \u00fcber der Opti\u00admie\u00adrung ein\u00adzel\u00adner Instruk\u00adtio\u00adnen an bestehen\u00adde Hard\u00adware\u00adstruk\u00adtu\u00adren und Befehls\u00ads\u00e4t\u00adze steht der Ins\u00adtruc\u00adtion Level Par\u00adal\u00adle\u00adlism (zu Deutsch: Par\u00adal\u00adle\u00adlis\u00admus der Instruk\u00adtio\u00adnen). Dies ist nichts ande\u00adres als die F\u00e4hig\u00adkeit, m\u00f6g\u00adlichst vie\u00adle Instruk\u00adtio\u00adnen par\u00adal\u00adlel abar\u00adbei\u00adten zu k\u00f6n\u00adnen. Je h\u00f6her der <span class=\"caps\">ILP<\/span>, des\u00adto flot\u00adter kann der Pro\u00adzes\u00adsor theo\u00adre\u00adtisch arbei\u00adten. Eine Stei\u00adge\u00adrung kann auf ver\u00adschie\u00adde\u00adne Arten erreicht wer\u00adden, bei\u00adspiels\u00adwei\u00adse Anpas\u00adsung des Pro\u00adgramm\u00adcodes an bestimm\u00adte Pro\u00adzes\u00adsor\u00adar\u00adchi\u00adtek\u00adtu\u00adren oder mas\u00adsi\u00adve Nut\u00adzung von Par\u00adal\u00adle\u00adli\u00adsie\u00adrungs\u00adme\u00adcha\u00adnis\u00admen aktu\u00adel\u00adler Prozessoren.<br>\nTrotz der Tat\u00adsa\u00adche, dass moder\u00adne Pro\u00adzes\u00adso\u00adren beim Vor\u00adgang der Par\u00adal\u00adle\u00adli\u00adsie\u00adrung einen gro\u00ad\u00dfen Teil der Arbeit von sich aus erle\u00addi\u00adgen (der Pen\u00adti\u00adum 4 sei an die\u00adser Stel\u00adle mal au\u00dfen vor gestellt), ent\u00adf\u00e4llt der L\u00f6wen\u00adan\u00adteil immer noch auf den Programmierer\/Compiler. Eine Anpas\u00adsung des Pro\u00adgramm\u00adcodes an bestimm\u00adte gene\u00adra\u00adti\u00adons\u00ad\u00fcber\u00adgrei\u00adfen\u00adde Pro\u00adzes\u00adsor\u00adei\u00adgen\u00adschaf\u00adten kann bei\u00adspiels\u00adwei\u00adse den Pro\u00adzes\u00adsor effek\u00adti\u00adver aus\u00adlas\u00adten, was zu einem h\u00f6he\u00adren Durch\u00adsatz an gleich\u00adzei\u00adtig ver\u00adar\u00adbei\u00adte\u00adten Instruk\u00adtio\u00adnen und somit einem gestei\u00adger\u00adten <span class=\"caps\">ILP<\/span>&nbsp;f\u00fchrt.<br>\nPro\u00adzes\u00adso\u00adren brin\u00adgen gen\u00fc\u00adgend M\u00f6g\u00adlich\u00adkei\u00adten, den Par\u00adal\u00adle\u00adlis\u00admus zu stei\u00adgern, bei\u00adspiels\u00adwei\u00adse Super\u00adska\u00adla\u00adre Arbeits\u00adwei\u00adse oder Out-of-Order Execution.<\/p>\n<p>Die hier\u00adf\u00fcr ver\u00adwen\u00adde\u00adten Hebel sind bei\u00adspiels\u00adwei\u00adse die super\u00adska\u00adla\u00adre Arbeits\u00adwei\u00adse oder die Out-of-Order Execution.<\/p>\n<p><b>Stei\u00adge\u00adrung des Thread Level Par\u00adal\u00adle\u00adlism (<span class=\"caps\">TLP<\/span>)<\/b><br>\n\u00c4hn\u00adlich wie der <span class=\"caps\">ILP<\/span>, jedoch wie\u00adder\u00adum eine Ebe\u00adne h\u00f6her als die\u00adser, ist der Thread Level Par\u00adal\u00adle\u00adlism (zu Deutsch: Par\u00adal\u00adle\u00adlis\u00admus der Threads). Ein moder\u00adner Com\u00adpu\u00adter muss sehr vie\u00adle Auf\u00adga\u00adben gleich\u00adzei\u00adtig erle\u00addi\u00adgen. So wird bei\u00adspiels\u00adwei\u00adse w\u00e4h\u00adrend dem Down\u00adload einer Datei auf die Fest\u00adplat\u00adte auf die\u00adser gleich\u00adzei\u00adtig ein Anti-Viren Check vor\u00adge\u00adnom\u00admen, w\u00e4h\u00adrend der MP3-h\u00f6ren\u00adde Anwen\u00adder fr\u00f6h\u00adlich an einem Text&nbsp;tippt.<br>\nAll die\u00adse ein\u00adzel\u00adnen Anwen\u00addun\u00adgen haben dut\u00adzen\u00adde von ein\u00adzel\u00adnen Threads gleich\u00adzei\u00adtig offen, die, um eine opti\u00adma\u00adle Per\u00adfor\u00admance zu errei\u00adchen, m\u00f6g\u00adlichst par\u00adal\u00adlel abge\u00adar\u00adbei\u00adtet wer\u00adden (jeder die\u00adser Threads f\u00fchrt pro Sekun\u00adde sel\u00adber wie\u00adder\u00adum tau\u00adsen\u00adde bis Mil\u00adlio\u00adnen von Instruk\u00adtio\u00adnen aus). Die\u00adsen Fak\u00adtor der par\u00adal\u00adle\u00adlen Abar\u00adbei\u00adtung von Threads bezeich\u00adnet der <span class=\"caps\">TLP<\/span>. Selbst\u00adver\u00adst\u00e4nd\u00adlich kann es \u2014 wie beim <span class=\"caps\">ILP<\/span> auch \u2014 auch hier zu Kon\u00adflik\u00adten zwi\u00adschen ein\u00adzel\u00adnen Threads oder zu gegen\u00adsei\u00adti\u00adgen Abh\u00e4n\u00adgig\u00adkei\u00adten kom\u00admen, die Auf\u00adga\u00adbe des Com\u00adpi\u00adlers liegt an der opti\u00adma\u00adlen Anpas\u00adsung des Pro\u00adgramm\u00adcodes an die Gege\u00adben\u00adhei\u00adten der Hardware<\/p>\n<p>Letzt\u00adend\u00adlich kann auch per Hard\u00adware der <span class=\"caps\">TLP<\/span> deut\u00adlich erh\u00f6ht wer\u00adden, bei\u00adspiels\u00adwei\u00adse durch meh\u00adre\u00adre Pro\u00adzes\u00adso\u00adren, in Hard\u00adware inte\u00adgrier\u00adtes Mul\u00adti-Thre\u00ada\u00adding oder ande\u00adre Tech\u00adni\u00adken, auf die eben\u00adfalls im wei\u00adte\u00adren Ver\u00adlauf des Arti\u00adkels noch genau\u00ades\u00adtens ein\u00adge\u00adgan\u00adgen&nbsp;wird.<\/p>\n<p><b><span class=\"caps\">VLIW<\/span>: Very long ins\u00adtruc\u00adtion&nbsp;word<\/b><br>\nEin letz\u00adter Ansatz der Par\u00adal\u00adle\u00adli\u00adsie\u00adrung per Soft\u00adware ist die sog. VLIW-Tech\u00adnik. Die\u00adse Art der Opti\u00admie\u00adrung per Com\u00adpi\u00adler ist gleich\u00adzei\u00adtig die erfolgs\u00adver\u00adspre\u00adchends\u00adte als auch die radi\u00adkals\u00adte L\u00f6sung. Nicht nur braucht der erzeug\u00adte Pro\u00adgramm\u00adcode zwin\u00adgend spe\u00adzi\u00adell ange\u00adpass\u00adte und auf die Soft\u00adware opti\u00admier\u00adte Hard\u00adware, er ist auch noch dazu inkom\u00adpa\u00adti\u00adbel zum spe\u00adzi\u00adfi\u00adka\u00adti\u00adons\u00adkon\u00adfor\u00admem x86 Maschi\u00adnen\u00adcode. Effek\u00adtiv betrach\u00adtet arbei\u00adten hier jedoch Hard\u00adware und Soft\u00adware Hand in Hand, um eine opti\u00adma\u00adle Aus\u00adnut\u00adzung der vor\u00adhan\u00adde\u00adnen Res\u00adsour\u00adcen und somit einen m\u00f6g\u00adlichst hohen <span class=\"caps\">ILP<\/span> und <span class=\"caps\">TLP<\/span> zu erreichen.<\/p>\n<p><span class=\"caps\">VLIW<\/span> ist eine Erwei\u00adte\u00adrung der super\u00adska\u00adla\u00adren Arbeits\u00adwei\u00adse von Pro\u00adzes\u00adso\u00adren und basiert auf fol\u00adgen\u00adder Technik:<br>\nBei der bereits bekann\u00adten super\u00adska\u00adla\u00adren Arbeits\u00adwei\u00adse erfolgt die opti\u00adma\u00adle Anord\u00adnung und Zusam\u00admen\u00adfas\u00adsung ein\u00adzel\u00adner Instruk\u00adtio\u00adnen zur Lauf\u00adzeit des Pro\u00adgramms im Leit\u00adwerk des Mikro\u00adpro\u00adzes\u00adsors. Vor\u00adtei\u00adle sind ver\u00adh\u00e4lt\u00adnis\u00adm\u00e4\u00ad\u00dfig kur\u00adze Instruk\u00adtio\u00adnen und der somit nied\u00adri\u00adge Spei\u00adcher\u00adbe\u00addarf der Soft\u00adware. Nach\u00adteil ist die nie\u00admals opti\u00adma\u00adle Aus\u00adnut\u00adzung der vor\u00adhan\u00adde\u00adnen Ressourcen.<br>\nBei <span class=\"caps\">VLIW<\/span> hin\u00adge\u00adgen erfolgt die Opti\u00admie\u00adrung auf die Mikro\u00adpro\u00adzes\u00adsor\u00adar\u00adchi\u00adtek\u00adtur und Ver\u00adtei\u00adlung der par\u00adal\u00adlel aus\u00adf\u00fchr\u00adba\u00adren Instruk\u00adtio\u00adnen auf die ein\u00adzel\u00adnen Rechen\u00adein\u00adhei\u00adten bereits zum Zeit\u00adpunkt der Com\u00adpi\u00adlie\u00adrung des Pro\u00adgramms in Maschi\u00adnen\u00adcode. Der Vor\u00adgang der \u00dcber\u00adset\u00adzung dau\u00adert dadurch zwar deut\u00adlich l\u00e4n\u00adger, die Lauf\u00adzei\u00adten der dar\u00adaus ent\u00adste\u00adhen\u00adden Pro\u00adgram\u00adme k\u00f6n\u00adnen hier\u00addurch jedoch dras\u00adtisch redu\u00adziert wer\u00adden. Ein Nach\u00adteil ist hin\u00adge\u00adgen die L\u00e4n\u00adge der ein\u00adzel\u00adnen Instruk\u00adtio\u00adnen und der somit gestei\u00adger\u00adte Spei\u00adcher\u00adbe\u00addarf der Programme.<\/p>\n<p><!--nextpage--><br>\n<b><span class=\"caps\">VLIW<\/span>: Very long ins\u00adtruc\u00adtion&nbsp;word<\/b><br>\nIm letz\u00adten Absatz wur\u00adde erw\u00e4hnt, dass bei der <span class=\"caps\">VLIW<\/span> Phi\u00adlo\u00adso\u00adphie die Hard- und Soft\u00adware Hand in Hand zusam\u00admen\u00adar\u00adbei\u00adten m\u00fcs\u00adsen, um einen m\u00f6g\u00adlichst hohen Durch\u00adsatz an Instruk\u00adtio\u00adnen und Threads zu errei\u00adchen. Die Anpas\u00adsung der Hard\u00adware an <span class=\"caps\">VLIW<\/span> stellt somit gleich\u00adzei\u00adtig den Ein\u00adstieg in das n\u00e4chs\u00adte und deut\u00adlich aus\u00adf\u00fchr\u00adli\u00adche\u00adre Kapi\u00adtel der Opti\u00admie\u00adrung der Hard\u00adware an bestehen\u00adden Pro\u00adgramm\u00adcode&nbsp;dar.<\/p>\n<p>Das fol\u00adgen\u00adde fik\u00adti\u00adve Bei\u00adspiel ist ent\u00adnom\u00admen aus dem <a href=\"http:\/\/www.planet3dnow.de\/vbulletin\/showthread.php?t=352930&amp;garpg=18\" target=\"_blank\">Kapi\u00adtel \u201cIntel Ita\u00adni\u00adum: 64-Bit und neue Archi\u00adtek\u00adtur f\u00fcr den Ser\u00adver\u00admarkt\u201d<\/a> des Arti\u00adkels \u201c<a href=\"http:\/\/www.planet3dnow.de\/vbulletin\/showthread.php?t=352930\" target=\"_blank\">64-Bit CPUs f\u00fcr\u2019s Wohn\u00adzim\u00admer: Inno\u00adva\u00adti\u00adon oder Mar\u00adke\u00adting\u00adge\u00adblub\u00adber?<\/a>\u201d, hier auf Pla\u00adnet&nbsp;3DNow!.<\/p>\n<div class=\"newsfloatleft\"><img decoding=\"async\" src=\"http:\/\/www.planet3dnow.de\/artikel\/diverses\/doping\/images\/vliw.png\" border=\"0\" alt onload=\"NcodeImageResizer.createOn(this);\"><\/div>\n<p>Bei <span class=\"caps\">VLIW<\/span> (Very Long Ins\u00adtruc\u00adtion Word) han\u00addelt es sich um eine Erwei\u00adte\u00adrung der Super\u00adska\u00adla\u00adren Arbeits\u00adwei\u00adse. Der Mikro\u00adpro\u00adzes\u00adsor ver\u00adf\u00fcgt, wie bei die\u00adser auch, \u00fcber meh\u00adre\u00adre Rechen\u00adein\u00adhei\u00adten, die auf bestimm\u00adte Ope\u00adra\u00adtio\u00adnen spe\u00adzia\u00adli\u00adsiert sind (<span class=\"caps\">ALU<\/span>, <span class=\"caps\">FPU<\/span>, etc.). Im Gegen\u00adsatz zur rei\u00adnen super\u00adska\u00adla\u00adren Arbeits\u00adwei\u00adse erfolgt die Opti\u00admie\u00adrung der Aus\u00adf\u00fch\u00adrung jedoch nicht im Leit\u00adwerk des Mikro\u00adpro\u00adzes\u00adsors, son\u00addern bereits im Vor\u00adaus durch den Com\u00adpi\u00adler. Das Leit\u00adwerk hat nun nur noch die Auf\u00adga\u00adbe, die ein\u00adzel\u00adnen Instruk\u00adtio\u00adnen an die ein\u00adzel\u00adnen Rechen\u00adein\u00adhei\u00adten zu ver\u00adtei\u00adlen, nicht jedoch die\u00adse auf ihren Inhalt zu analysieren.<\/p>\n<p>Im obi\u00adgen VLIW-Kern eines Mikro\u00adpro\u00adzes\u00adsors ver\u00adf\u00fcgt die\u00adser \u00fcber sechs Rechen\u00adein\u00adhei\u00adten, sowie eine Instruk\u00adti\u00adons\u00adl\u00e4n\u00adge von 32 Bit. Ein super\u00adska\u00adla\u00adrer Pro\u00adzes\u00adsor w\u00fcr\u00adde nun ein Instruk\u00adti\u00adons\u00adre\u00adgis\u00adter von 32 Bit L\u00e4n\u00adge besit\u00adzen, das Leit\u00adwerk die\u00adses lesen, deco\u00addie\u00adren und anschlie\u00ad\u00dfend an die ent\u00adspre\u00adchen\u00adde Rechen\u00adein\u00adheit wei\u00adter\u00adlei\u00adten. Ein <span class=\"caps\">VLIW<\/span> Pro\u00adzes\u00adsor besitzt hin\u00adge\u00adgen ein Instruk\u00adti\u00adons\u00adre\u00adgis\u00adter&nbsp;von<\/p>\n<div style=\"text-align: center;\"><i>Instruk\u00adti\u00adons\u00adl\u00e4n\u00adge * Anzahl der Recheneinheiten<\/i><\/div>\n<p>\nalso im obi\u00adgen Fall 32 Bit * 6 Rechen\u00adein\u00adhei\u00adten = 192 Bit. Eine Instruk\u00adti\u00adon ent\u00adh\u00e4lt also maxi\u00admal sechs Sub-Instruk\u00adtio\u00adnen. Die\u00adse Ein\u00adtei\u00adlung erle\u00addigt der Com\u00adpi\u00adler, so dass der Pro\u00adgramm\u00adcode immer opti\u00admal auf die Maschi\u00adne abge\u00adstimmt ist. Intel nennt die\u00adse Tech\u00adnik im Ita\u00adni\u00adum <span class=\"caps\">EPIC<\/span> (Expli\u00adcit\u00adly par\u00adal\u00adlel Ins\u00adtruc\u00adtion Com\u00adpu\u00adter), ein Com\u00adpi\u00adler f\u00fcr <span class=\"caps\">IA-64<\/span> muss somit EPIC-Kom\u00adpa\u00adti\u00adblen Maschi\u00adnen\u00adcode erzeugen.<\/p>\n<p><!--nextpage--><br>\n<b>Time-sli\u00adce Multi-Threading<\/b><br>\nDas Prin\u00adzip des Time-sli\u00adce Mul\u00adti-Thre\u00ada\u00adding (kurz <span class=\"caps\">TSMT<\/span>) basiert auf der Tat\u00adsa\u00adche, dass Pro\u00adzes\u00adso\u00adren trotz der zu Beginn genann\u00adten F\u00e4hig\u00adkei\u00adten recht viel der zur Ver\u00adf\u00fc\u00adgung ste\u00adhen\u00adden Rechen\u00adzeit mit Nichts\u00adtun oder War\u00adten auf Daten ver\u00adbrin\u00adgen. <span class=\"caps\">TSMT<\/span> unter\u00adteilt die ver\u00adf\u00fcg\u00adba\u00adre Rechen\u00adzeit in fixe Ein\u00adhei\u00adten auf der Zeit\u00adschei\u00adbe und wech\u00adselt nach Ablauf die\u00adser ein\u00adge\u00adteil\u00adten Rechen\u00adzeit von einem Thread zum n\u00e4chs\u00adten. Obwohl auch hier\u00adbei vie\u00adle Rechen\u00adein\u00adhei\u00adten des Mikro\u00adpro\u00adzes\u00adsors, die theo\u00adre\u00adtisch par\u00adal\u00adlel arbei\u00adten k\u00f6nn\u00adten brach lie\u00adgen, wird den\u00adnoch der Zeit\u00adver\u00adlust bei lan\u00adgen War\u00adte\u00adzei\u00adten, bei\u00adspiels\u00adwei\u00adse einem Cache-Miss inkl. fol\u00adgen\u00addem Fetch der Daten aus dem Spei\u00adcher, reduziert.<\/p>\n<p><b>Switch-on-event Mul\u00adti-Thre\u00ada\u00adding<\/b><br>\nDas Switch-on-event Mul\u00adti-Thre\u00ada\u00adding (kurz SoEMT) gleicht gr\u00f6\u00df\u00adten\u00adteils dem <span class=\"caps\">TSMT<\/span>, jedoch mit der klei\u00adnen aber ent\u00adschei\u00adden\u00adden Aus\u00adnah\u00adme, dass die Rechen\u00adzeit nicht fix ein\u00adge\u00adteilt wird, son\u00addern ledig\u00adlich bei Auf\u00adtre\u00adten von l\u00e4n\u00adge\u00adren War\u00adte\u00adzei\u00adten von einem Thread zum n\u00e4chs\u00adten gewech\u00adselt wird. Hier\u00adbei muss jedoch der \u201cHaupt\u00adth\u00adread\u201d die h\u00f6chs\u00adte Prio\u00adri\u00adt\u00e4t haben, bei Auf\u00adtre\u00adten einer l\u00e4n\u00adge\u00adren War\u00adte\u00adzeit wird zu Threads mit nied\u00adri\u00adge\u00adrer Prio\u00adri\u00adt\u00e4t gewech\u00adselt, bis die War\u00adte\u00adzeit f\u00fcr den Pro\u00adzes\u00adsor vor\u00ad\u00fcber ist (als gutes Bei\u00adspiel dient auch hier wie\u00adder ein Cache-Miss mit anschlie\u00ad\u00dfen\u00addem Fetch der Daten aus dem Arbeitsspeicher).<br>\nDer Vor\u00adteil gegen\u00ad\u00fcber <span class=\"caps\">TSMT<\/span> ist, dass ein\u00adzel\u00adne Threads h\u00f6he\u00adre Prio\u00adri\u00adt\u00e4\u00adten haben k\u00f6n\u00adnen als ande\u00adre und somit der Pro\u00adgramm\u00adfluss gezielt gesteu\u00adert und opti\u00admiert wer\u00adden kann, wohin\u00adge\u00adgen beim <span class=\"caps\">TSMT<\/span> immer fes\u00adte Rechen\u00adzei\u00adten zuge\u00adwie\u00adsen wer\u00adden, nach denen der Pro\u00adzes\u00adsor, unge\u00adach\u00adtet der Tat\u00adsa\u00adche ob bereits eine Ter\u00admi\u00adnie\u00adrung des aktu\u00adel\u00adlen Threads vor\u00adliegt oder nicht, zum n\u00e4chs\u00adten Thread schaltet.<\/p>\n<p>Bei\u00adde Ver\u00adfah\u00adren haben jedoch den Nach\u00adteil, dass auch hier\u00adf\u00fcr eine im ers\u00adten Fall dezen\u00adte, im zwei\u00adten Fall deut\u00adli\u00adche \u00c4nde\u00adrung des Pro\u00adgramm\u00adcodes not\u00adwen\u00addig ist. Des\u00adwei\u00adte\u00adren sind bei\u00adde Ver\u00adfah\u00adren weit von der opti\u00adma\u00adlen Aus\u00adnut\u00adzung der Res\u00adsour\u00adcen entfernt.<\/p>\n<p><!--nextpage--><br>\n<b>OnChip Mul\u00adti-Pro\u00adces\u00adsing<\/b><br>\nDas onChip Mul\u00adti-Pro\u00adces\u00adsing (kurz <span class=\"caps\">CMP<\/span>) kom\u00adbi\u00adniert zwei von\u00adein\u00adan\u00adder unab\u00adh\u00e4n\u00adgi\u00adge Pro\u00adzes\u00adso\u00adren auf einem ein\u00adzel\u00adnen Die. \u00c4hn\u00adlich wie beim im noch zu erl\u00e4u\u00adtern\u00adden Simul\u00adta\u00adneous Mul\u00adti-Thre\u00ada\u00adding, wer\u00adden beim <span class=\"caps\">CMP<\/span> ver\u00adschie\u00adde\u00adne Res\u00adsour\u00adcen gemein\u00adsam benutzt, ande\u00adre wie\u00adder\u00adum ste\u00adhen exklu\u00adsiv zur Ver\u00adf\u00fc\u00adgung. Da in der x86-Welt (noch) kein CMP-Sys\u00adtem exis\u00adtiert, wer\u00adde ich mei\u00adne fol\u00adgen\u00adden Aus\u00adf\u00fch\u00adrun\u00adgen auf den Power4 Ser\u00adver\u00adpro\u00adzes\u00adsor von <span class=\"caps\">IBM<\/span> beziehen.<\/p>\n<p>Der Power4 ist ein sol\u00adcher CMP-f\u00e4hi\u00adger Mikro\u00adpro\u00adzes\u00adsor, der auf einem Die zwei Pro\u00adzes\u00adso\u00adren unter\u00adbringt. Im Unter\u00adschied zu einem Com\u00adpu\u00adter mit zwei phy\u00adsi\u00adka\u00adli\u00adschen Mikro\u00adpro\u00adzes\u00adso\u00adren m\u00fcs\u00adsen sich die bei\u00adden des Power4 unter ande\u00adrem die Caches teil\u00adwei\u00adse tei\u00adlen. Teil\u00adwei\u00adse bedeu\u00adtet in die\u00adsem Fall, dass jeder der bei\u00adden onChip Pro\u00adzes\u00adso\u00adren \u00fcber einen eige\u00adnen L1-Cache ver\u00adf\u00fcgt, der L2-Cache (~ 1.<span class=\"caps\">5MB<\/span>) sowie L3-Cache (32 \u2014 128 <span class=\"caps\">MB<\/span>) jedoch gemein\u00adsam genutzt werden.<br>\nDies muss jedoch nicht zwin\u00adgend einen Nach\u00adteil dar\u00adstel\u00adlen, so kann bei\u00adspiels\u00adwei\u00adse bei ange\u00adpass\u00adter Soft\u00adware ein Pro\u00adzes\u00adsor bereits die ben\u00f6\u00adtig\u00adten Daten in den L2-Cache schau\u00adfeln, die der ande\u00adre in K\u00fcr\u00adze ben\u00f6\u00adti\u00adgen wird. Durch opti\u00adma\u00adle Pro\u00adgram\u00admie\u00adrung ist hier also tat\u00ads\u00e4ch\u00adlich nahe\u00adzu opti\u00adma\u00adle Aus\u00adnut\u00adzung der Res\u00adsour\u00adcen m\u00f6g\u00adlich. Den\u00adnoch darf nicht ver\u00adschwie\u00adgen wer\u00adden, dass bei gemein\u00adsam genutz\u00adten Spei\u00adchern immer die Gefahr des Kon\u00adflikts besteht.<\/p>\n<p>Der Nach\u00adteil einer sol\u00adchen Umset\u00adzung liegt jedoch auf der Hand: In Desk\u00adtop-Pro\u00adzes\u00adso\u00adren ist <span class=\"caps\">CMP<\/span> unprak\u00adti\u00adka\u00adbel, da sowohl die Kos\u00adten f\u00fcr die Her\u00adstel\u00adlung, als auch der Ener\u00adgie\u00adver\u00adbrauch sehr hoch sind. Ob die\u00adser Gr\u00fcn\u00adde ist stark anzu\u00adneh\u00admen, dass <span class=\"caps\">CMP<\/span> f\u00fcr den Markt der Heim\u00adcom\u00adpu\u00adter auch wei\u00adter\u00adhin eine unter\u00adge\u00adord\u00adne\u00adte Rol\u00adle spie\u00adlen&nbsp;wird.<\/p>\n<p><!--nextpage--><br>\n<b>Sym\u00adme\u00adtric Multi-Processing<\/b><br>\nDies ist die wohl bekann\u00adtes\u00adte und eta\u00adblier\u00adtes\u00adte Art, die Leis\u00adtung eines Com\u00adpu\u00adters m\u00f6g\u00adlichst g\u00fcns\u00adtig zu stei\u00adgern: Man behal\u00adte alles wie es ist und f\u00fcge ein\u00adfach einen zwei\u00adten Pro\u00adzes\u00adsor hin\u00adzu. Dass jedoch die Rech\u00adnung 2 x 1 GHz <span class=\"caps\">CPU<\/span> = 2 GHz auf kei\u00adnen Fall auf\u00adgeht, ist logisch. Auch die Tat\u00adsa\u00adche, dass meh\u00adre\u00adre Pro\u00adzes\u00adso\u00adren ledig\u00adlich bei bestimm\u00adten, nicht heim\u00adty\u00adpi\u00adschen Anwen\u00addun\u00adgen wirk\u00adlich Sinn machen, wird in der auf\u00adkom\u00admen\u00adden Eupho\u00adrie der Takt\u00adfre\u00adquenz\u00adver\u00addopp\u00adlung ger\u00adne \u00fcbersehen.<br>\nSym\u00adme\u00adtric Mul\u00adti-Pro\u00adces\u00adsing (kurz <span class=\"caps\">SMP<\/span>) Com\u00adpu\u00adter haben nicht nur Vor\u00adtei\u00adle und k\u00f6n\u00adnen unter Umst\u00e4n\u00adden sogar lang\u00adsa\u00admer sein als Ein-Pro\u00adzes\u00adsor Sys\u00adte\u00adme. Doch der Rei\u00adhe&nbsp;nach:<\/p>\n<p>Bei SMP-Sys\u00adte\u00admen wird die kom\u00adplet\u00adte exter\u00adne Peri\u00adphe\u00adrie behal\u00adten, ledig\u00adlich die Anzahl der Pro\u00adzes\u00adso\u00adren steigt. Dies bedeu\u00adtet, dass wei\u00adter\u00adhin ledig\u00adlich ein Spei\u00adcher\u00adka\u00adnal zur Ver\u00adf\u00fc\u00adgung steht (respek\u00adti\u00adve zwei, bei Dual-Chan\u00adnel Inter\u00adface Chip\u00ads\u00e4t\u00adzen), ein AGP-Bus und ein PCI-Bus. Ver\u00addop\u00adpelt wird hin\u00adge\u00adgen die Anzahl sowie Gr\u00f6\u00ad\u00dfe der Caches, die loka\u00adlen APIC-Con\u00adtrol\u00adler sowie die Anzahl der Prozessoren.<br>\nEin aus\u00adba\u00adlan\u00adcier\u00adtes Ein-Pro\u00adzes\u00adsor\u00adsys\u00adtem wird also durch Ver\u00addopp\u00adlung einer Ein\u00adheit geh\u00f6\u00adrig aus dem Gleich\u00adge\u00adwicht gebracht. Bei Ein-Pro\u00adzes\u00adsor Sys\u00adte\u00admen gibt es unter\u00adschied\u00adli\u00adche Schwach\u00adstel\u00adlen, unter ande\u00adrem den nied\u00adri\u00adgen <span class=\"caps\">FSB<\/span> im Ver\u00adh\u00e4lt\u00adnis zum Pro\u00adzes\u00adsor\u00adtakt sowie den lang\u00adsa\u00admen Arbeitsspeicher.<br>\nDass die Spei\u00adcher\u00adband\u00adbrei\u00adte jedoch bei Ver\u00addopp\u00adlung der Pro\u00adzes\u00adso\u00adren kon\u00adstant bleibt, kann sich nur nega\u00adtiv auf die Per\u00adfor\u00admance aus\u00adwir\u00adken. Und in der Tat ist es so, dass je klaf\u00adfen\u00adder das Loch zwi\u00adschen Pro\u00adzes\u00adsor\u00adtakt und Spei\u00adcher\u00adtakt, des\u00adto gerin\u00adger der effek\u00adti\u00adve Leis\u00adtungs\u00adge\u00adwinn durch eine zwei\u00adte <span class=\"caps\">CPU<\/span>. Als her\u00advor\u00adra\u00adgen\u00addes Bei\u00adspiel kann man die Power\u00adMac <span class=\"caps\">DP<\/span> von Apple ver\u00adwen\u00adden. Beim Dual <span class=\"caps\">G4<\/span>\/400 oder <span class=\"caps\">G4<\/span>\/500 mit her\u00adk\u00f6mm\u00adli\u00adchem <span class=\"caps\">PC100<\/span> Arbeits\u00adspei\u00adcher ist der Per\u00adfor\u00adman\u00adce\u00adge\u00adwinn gegen\u00ad\u00fcber einer Ein-Pro\u00adzes\u00adsor Maschi\u00adne deut\u00adlich sp\u00fcr\u00adbar, wohin\u00adge\u00adgen der Dual 1 GHz mit <span class=\"caps\">PC133<\/span> Arbeits\u00adspei\u00adcher kaum schnel\u00adler arbei\u00adtet als die Ein-Pro\u00adzes\u00adsor Vari\u00adan\u00adte. Und das, obwohl der Spei\u00adcher- als auch der Bus\u00adtakt von 100 MHz auf 133 MHz ange\u00adho\u00adben wur\u00adden. Den\u00adnoch macht das Ver\u00adh\u00e4lt\u00adnis von CPU-Takt zu Spei\u00adcher\u00adtakt von 7.5:1 beim Dual 1 GHz den zu erwar\u00adten\u00adden Per\u00adfor\u00adman\u00adce\u00adge\u00adwinn einen Strich durch die Rechnung.<\/p>\n<p>Die n\u00e4chs\u00adte Ein\u00adschr\u00e4n\u00adkung betrifft den AGP-Bus. F\u00fcr meh\u00adre\u00adre Pro\u00adzes\u00adso\u00adren steht bis ein\u00adschlie\u00df\u00adlich <span class=\"caps\">AGP<\/span> 2.0 ledig\u00adlich ein ein\u00adzel\u00adner AGP-Bus zur Ver\u00adf\u00fc\u00adgung. Mit <span class=\"caps\">AGP<\/span> 3.0 hat Intel zwar die M\u00f6g\u00adlich\u00adkeit der mul\u00adti\u00adplen AGP-Bus\u00adse spe\u00adzi\u00adfi\u00adziert, bis die ent\u00adspre\u00adchen\u00adden Mother\u00adboards jedoch im Han\u00addel erh\u00e4lt\u00adlich sind, wird erfah\u00adrungs\u00adge\u00adm\u00e4\u00df noch eini\u00adge Zeit vergehen.<br>\nBei gra\u00adfisch inten\u00adsi\u00adven Anwen\u00addun\u00adgen wie bei\u00adspiels\u00adwei\u00adse 3D-Spie\u00adlen kann es durch\u00adaus vor\u00adkom\u00admen, dass die Per\u00adfor\u00admance eines Com\u00adpu\u00adters sinkt, je mehr Pro\u00adzes\u00adso\u00adren man hin\u00adzu\u00adf\u00fcgt. Der Grund liegt schlicht und ergrei\u00adfend an den Kon\u00adflik\u00adten und dar\u00adaus resul\u00adtie\u00adren\u00adden Still\u00adst\u00e4n\u00adden der Pro\u00adzes\u00adso\u00adren, sog. stalls (engl.: to stall = zum Still\u00adstand brin\u00adgen, still\u00adste\u00adhen). Je mehr Pro\u00adzes\u00adso\u00adren ver\u00adsu\u00adchen simul\u00adtan auf einen AGP-Bus zuzu\u00adgrei\u00adfen, des\u00adto mehr Rechen\u00adzeit wird mit Still\u00adstand vergeudet.<\/p>\n<p>Der glei\u00adche Effekt tritt im \u00fcbri\u00adgen auch beim Arbeits\u00adspei\u00adcher auf, hier\u00adf\u00fcr exis\u00adtiert das sog. Locking (to lock = sper\u00adren, am Zugang hin\u00addern). Mul\u00adti-Pro\u00adzes\u00adsor Ker\u00adnel von Betriebs\u00adsys\u00adte\u00admen m\u00fcs\u00adsen grund\u00ads\u00e4tz\u00adlich eini\u00adge zus\u00e4tz\u00adli\u00adche Befeh\u00adle imple\u00admen\u00adtie\u00adren, die bei\u00adspiels\u00adwei\u00adse den Arbeits\u00adspei\u00adcher vor par\u00adal\u00adle\u00adlen Zugrif\u00adfen sch\u00fct\u00adzen, um die Daten\u00adkon\u00adsis\u00adtenz zu wah\u00adren. Greift ein Mikro\u00adpro\u00adzes\u00adsor in einem SMP-Sys\u00adtem auf den Arbeits\u00adspei\u00adcher zu, so wird zun\u00e4chst der Zugriff auf die\u00adsen f\u00fcr alle wei\u00adte\u00adren, vor\u00adhan\u00adde\u00adnen Mikro\u00adpro\u00adzes\u00adso\u00adren gesperrt und dem war\u00adten\u00adden Mikro\u00adpro\u00adzes\u00adsor der exklu\u00adsi\u00adve Zugriff gew\u00e4hrt. Anschlie\u00ad\u00dfend muss der Arbeits\u00adspei\u00adcher wie\u00adder f\u00fcr alle Pro\u00adzes\u00adso\u00adren frei\u00adge\u00adge\u00adben werden.<br>\nDas Pro\u00adblem an die\u00adsem Pro\u00adze\u00adde\u00adre ist, dass der dabei ent\u00adste\u00adhen\u00adde Over\u00adhead gigan\u00adtisch ist. Im schlimms\u00adten Fall kann es vor\u00adkom\u00admen, dass alle Pro\u00adzes\u00adso\u00adren eines SMP-Sys\u00adtems sich f\u00fcr die Dau\u00ader des Spei\u00adcher\u00adsperr\u00advor\u00adgangs im Still\u00adstand befin\u00adden. Im Nor\u00admal\u00adfall betrifft dies jedoch ledig\u00adlich den auf den Arbeits\u00adspei\u00adcher zugrei\u00adfen\u00adden Mikroprozessor.<br>\nDass die\u00adser Vor\u00adgang, der den ohne\u00adhin schon aus\u00adbrem\u00adsen\u00adden Zugriff auf den Spei\u00adcher noch wei\u00adter ver\u00adlang\u00adsamt, nicht son\u00adder\u00adlich leis\u00adtungs\u00adf\u00f6r\u00addernd wirkt, kann sich wohl jeder, der den Arti\u00adkel bis hier\u00adher durch\u00adge\u00adhal\u00adten hat, aus\u00adma\u00adlen. Das pro\u00adble\u00adma\u00adti\u00adsche an die\u00adsem Locking ist die Tat\u00adsa\u00adche, dass nicht nur Sin\u00adgle-Threa\u00added Appli\u00adca\u00adti\u00adons, also Pro\u00adgram\u00adme die nicht f\u00fcr den Betrieb auf meh\u00adre\u00adren Pro\u00adzes\u00adso\u00adren kon\u00adzi\u00adpiert sind, die\u00adses Locking ver\u00adur\u00adsa\u00adchen, son\u00addern auch ver\u00adst\u00e4rkt Mul\u00adti-Threa\u00added Applications.<\/p>\n<p><!--nextpage--><br>\nSym\u00adme\u00adtric Mul\u00adti-Pro\u00adces\u00adsing (Fort\u00adset\u00adzung)<br>\nEin wei\u00adte\u00adres Pro\u00adblem stellt die Koh\u00e4\u00adrenz der Inhal\u00adte der unter\u00adschied\u00adli\u00adchen Cache-Hier\u00adar\u00adchien dar. Cache-Koh\u00e4\u00adrenz bedeu\u00adtet die Wah\u00adrung der G\u00fcl\u00adtig\u00adkeit der Inhal\u00adte der Caches. Wird bei\u00adspiels\u00adwei\u00adse ein Wert aus dem Arbeits\u00adspei\u00adcher von bei\u00adden Pro\u00adzes\u00adso\u00adren in den jeweils eige\u00adnen Cache gela\u00adden und von einem anschlie\u00ad\u00dfend ver\u00ad\u00e4n\u00addert wie\u00adder zur\u00fcck\u00adge\u00adschrie\u00adben, muss der zwei\u00adte Pro\u00adzes\u00adsor von die\u00adsem Vor\u00adgang Wis\u00adsen haben, um sei\u00adne eige\u00adnen Caches ent\u00adspre\u00adchend zu aktualisieren.<\/p>\n<p>SMP-Sys\u00adte\u00adme haben hier\u00adf\u00fcr ein sog. Cache-Koh\u00e4\u00adrenz Pro\u00adto\u00adkoll, wel\u00adches f\u00fcr die Kor\u00adrekt\u00adheit der Daten&nbsp;sorgt.<br>\nDas Pro\u00adto\u00adkoll mit der h\u00f6chs\u00adten Ver\u00adbrei\u00adtung ist das sog. MESI-Pro\u00adto\u00adkoll. Jeder der Buch\u00adsta\u00adben steht hier\u00adbei f\u00fcr einen bestimm\u00adten Zustand einer Cache-Line, die ein\u00adzel\u00adnen Zust\u00e4n\u00adde sind wie folgt definiert:<\/p>\n<div style=\"margin-left:40px\">* <b>Modi\u00adfied<\/b>: Der Inhalt im Arbeits\u00adspei\u00adcher wur\u00adde seit dem spie\u00adgeln in den loka\u00adlen Pro\u00adzes\u00adsor\u00adcache modi\u00adfi\u00adziert und stimmt somit nicht mehr \u00fcberein<br>\n    * <b>Exclu\u00adsi\u00adve<\/b>: Der Inhalt im Arbeits\u00adspei\u00adcher stimmt noch mit dem gespie\u00adgel\u00adten Inhalt im Cache \u00fcber\u00adein. Die Cache-Line befin\u00addet sich nur im Cache eines ein\u00adzel\u00adnen Prozessors.<br>\n    * <b>Shared<\/b>: Wie Exclu\u00adsi\u00adve, nur mit der Unter\u00adschei\u00addung dass sich die Cache-Line in meh\u00adre\u00adren Caches befin\u00addet. Bei Aktua\u00adli\u00adsie\u00adrung der urspr\u00fcng\u00adli\u00adchen Daten im Arbeits\u00adspei\u00adcher wer\u00adden alle Caches auf den neu\u00ades\u00adten Stand gebracht.<br>\n    * <b>Inva\u00adlid<\/b>: Der Inhalt im Pro\u00adzes\u00adsor\u00adcache ist ung\u00fcl\u00adtig, ein Zugriff erzeugt einen Cache-Miss. Die Daten m\u00fcs\u00adsen neu aus dem Arbeits\u00adspei\u00adcher gela\u00adden werden.<\/div>\n<p>Die Erhal\u00adtung der Kor\u00adrekt\u00adheit der Daten (auf fach\u00adchi\u00adne\u00adsisch Koh\u00e4\u00adrenz genannt) kos\u00adtet jedoch ein klein wenig Per\u00adfor\u00admance, was je nach Umset\u00adzung des Pro\u00adto\u00adkolls unter\u00adschied\u00adlich gra\u00advie\u00adrend aus\u00adfal\u00adlen&nbsp;kann.<br>\nEine Erwei\u00adte\u00adrung des MESI-Pro\u00adto\u00adkolls stellt das noch nicht so ver\u00adbrei\u00adte\u00adte MOE\u00adSI-Pro\u00adto\u00adkoll dar. Es ist im Grun\u00adde genom\u00admen zum MESI-Pro\u00adto\u00adkoll 100%ig kom\u00adpa\u00adti\u00adbel, kennt jedoch noch einen zus\u00e4tz\u00adli\u00adchen Status:&nbsp;<\/p>\n<div style=\"margin-left:40px\">* <b>Owner<\/b>: Zeigt an in wel\u00adchem Cache wel\u00adches Pro\u00adzes\u00adsors sich die Daten befin\u00adden. Somit k\u00f6n\u00adnen ande\u00adre Pro\u00adzes\u00adso\u00adren bei Bedarf die\u00adse Daten aus dem Cache anfor\u00addern und spa\u00adren sich den dazu im Ver\u00adgleich sehr lang\u00adsa\u00admen Hauptspeicherzugriff.<\/div>\n<div class=\"newsfloatleft\"><img decoding=\"async\" src=\"http:\/\/www.planet3dnow.de\/artikel\/diverses\/doping\/images\/moesi.png\" border=\"0\" alt onload=\"NcodeImageResizer.createOn(this);\"><\/div>\n<p>Hier\u00adbei pas\u00adsiert fol\u00adgen\u00addes: Stellt <span class=\"caps\">CPU1<\/span> einen Read-Request auf einen bestimm\u00adten Spei\u00adcher\u00adbe\u00adreich (<b>1<\/b>) wird die\u00adser in der Regel direkt aus dem Arbeits\u00adspei\u00adcher in den Cache der <span class=\"caps\">CPU<\/span> gela\u00adden. Merkt die Chip\u00adsatz\u00adlo\u00adgik jedoch, dass eine wei\u00adte\u00adre sich im Sys\u00adtem befind\u00adli\u00adche <span class=\"caps\">CPU<\/span> genau die\u00adsen Spei\u00adcher\u00adbe\u00adreich bereits im Cache hat, so wird der Read-Request vom lan\u00adge\u00adsa\u00admen Arbeits\u00adspei\u00adcher auf den schnel\u00adlen Cache der betref\u00adfen\u00adden <span class=\"caps\">CPU<\/span> umge\u00adlei\u00adtet. (<b>2<\/b>)<br>\nDie betref\u00adfen\u00adde <span class=\"caps\">CPU<\/span> (im Bei\u00adspiel <span class=\"caps\">CPU0<\/span>) \u00fcber\u00adtr\u00e4gt die Cache-Line anschlie\u00ad\u00dfend zum Chip\u00adsatz, (<b>3<\/b>) wel\u00adcher sie direkt wei\u00adter\u00adlei\u00adtet an <span class=\"caps\">CPU1<\/span> (<b>4<\/b>). Somit wer\u00adden mas\u00adsiv Takt\u00adzy\u00adklen ein\u00adge\u00adspart die beim Zugriff auf den im Ver\u00adgleich zum schnel\u00adlen Cache um den Fak\u00adtor hun\u00addert bis eini\u00adge Tau\u00adsend lang\u00adsa\u00adme\u00adren Arbeits\u00adspei\u00adcher mit Nichts\u00adtun ver\u00adbracht wor\u00adden&nbsp;w\u00e4ren.<br>\nWei\u00adter\u00adhin pro\u00adfi\u00adtiert auch der Spei\u00adcher\u00adbus von die\u00adser Tak\u00adtik, da weni\u00adger Zugrif\u00adfe auf den Spei\u00adcher\u00adbus statt\u00adfin\u00adden und er somit f\u00fcr ande\u00adre Auf\u00adga\u00adben ver\u00adf\u00fcg\u00adbar&nbsp;ist.<\/p>\n<p>Der durch die Wah\u00adrung der Koh\u00e4\u00adrenz ver\u00adur\u00adsach\u00adte Per\u00adfor\u00admance\u00adver\u00adlust wird durch effi\u00adzi\u00aden\u00adte Umset\u00adzung des MOE\u00adSI-Pro\u00adto\u00adkolls anstel\u00adle des MESI-Pro\u00adto\u00adkolls wie\u00adder mehr als wettgemacht.<\/p>\n<p><!--nextpage--><br>\n<b>Sym\u00adme\u00adtric Mul\u00adti-Pro\u00adces\u00adsing (Fort\u00adset\u00adzung)<\/b><br>\nDoch so nega\u00adtiv die Beschrei\u00adbung sol\u00adcher Sys\u00adte\u00adme nun auch klin\u00adgen mag, in vie\u00adlen F\u00e4l\u00adlen bringt ein zwei\u00adter Pro\u00adzes\u00adsor doch ein respek\u00adta\u00adbles Plus an Leis\u00adtung, wenn\u00adgleich bei zwei\u00adfel\u00adhaf\u00adtem Preis\/\u00adLeis\u00adtungs-Ver\u00adh\u00e4lt\u00adnis. So ist der Pen\u00adti\u00adum <span class=\"caps\">III<\/span> oder Pen\u00adti\u00adum 4 gar nicht f\u00e4hig, sei\u00adne Arbeit im Tan\u00addem-Betrieb zu ver\u00adrich\u00adten, der Ath\u00adlon <span class=\"caps\">MP<\/span> kos\u00adtet im Ver\u00adh\u00e4lt\u00adnis zu gleich\u00adschnel\u00adlen Ath\u00adlon <span class=\"caps\">XP<\/span> Pro\u00adzes\u00adso\u00adren deut\u00adlich mehr. Doch auch wenn <span class=\"caps\">AMD<\/span> den Ath\u00adlon <span class=\"caps\">XP<\/span> nicht f\u00fcr den Ein\u00adsatz in Sys\u00adte\u00admen mit mehr als einem Pro\u00adzes\u00adsor spe\u00adzi\u00adfi\u00adziert, es gibt vie\u00adle Mel\u00addun\u00adgen \u00fcber die erfolg\u00adrei\u00adche Inbe\u00adtrieb\u00adnah\u00adme von zwei Ath\u00adlon <span class=\"caps\">XP<\/span> oder gar Duron Prozessoren.<br>\nIm Zwei\u00adfels\u00adfall hilft genau\u00ades Stu\u00addi\u00adum der ein\u00adschl\u00e4\u00adgi\u00adgen Foren und nach\u00adfra\u00adgen bei Anwen\u00addern, die dies bereits erfolg\u00adreich durch\u00adge\u00adf\u00fchrt haben. Da jedoch <span class=\"caps\">AMD<\/span> ledig\u00adlich den Ath\u00adlon <span class=\"caps\">MP<\/span> f\u00fcr den Mehr-Pro\u00adzes\u00adsor Betrieb tes\u00adtet und spe\u00adzi\u00adfi\u00adziert, kann es bei Dual-XP Sys\u00adte\u00admen durch\u00adaus zu Pro\u00adble\u00admen kom\u00admen. Da Her\u00adstel\u00adler\u00adsup\u00adport bei nicht-spe\u00adzi\u00adfi\u00adka\u00adti\u00adons\u00adge\u00adrech\u00adter Hand\u00adha\u00adbung ohne\u00adhin nicht geleis\u00adtet wird, bleibt dies ein Expe\u00adri\u00adment mit unge\u00adwis\u00adsem Ausgang.<\/p>\n<p><!--nextpage--><br>\n<b>Simul\u00adta\u00adneous Multi-Threading<\/b><br>\nEin letz\u00adter Ansatz der Leis\u00adtungs\u00adstei\u00adge\u00adrung stellt das sog. Simul\u00adta\u00adneous Mul\u00adti-Thre\u00ada\u00adding (kurz <span class=\"caps\">SMT<\/span>) dar. Mit Hil\u00adfe die\u00adses Ver\u00adfah\u00adrens ist es m\u00f6g\u00adlich, mul\u00adti\u00adple Threads par\u00adal\u00adlel auf einem ein\u00adzi\u00adgen phy\u00adsi\u00adka\u00adli\u00adschen Pro\u00adzes\u00adsor aus\u00adzu\u00adf\u00fch\u00adren, ohne, wie bei <span class=\"caps\">TSMT<\/span> oder SoEMT, zwi\u00adschen den ein\u00adzel\u00adnen Threads hin- und her sprin\u00adgen zu m\u00fcssen.<\/p>\n<p>Das Prin\u00adzip und die Phi\u00adlo\u00adso\u00adphie hin\u00adter <span class=\"caps\">SMT<\/span> beruht dar\u00adauf, mit m\u00f6g\u00adlichst wenig Mehr\u00adkos\u00adten und Auf\u00adwand einen zwei\u00adten logi\u00adschen Pro\u00adzes\u00adsor auf ein phy\u00adsi\u00adka\u00adli\u00adsches Die zu packen. Dies wird erreicht, indem eini\u00adge Bestand\u00adtei\u00adle des Pro\u00adzes\u00adsors ver\u00addop\u00adpelt wer\u00adden, ande\u00adre wie\u00adder\u00adum par\u00adti\u00adtio\u00adniert oder gemein\u00adsam genutzt. Die bis\u00adher ein\u00adzi\u00adge erh\u00e4lt\u00adli\u00adche Imple\u00admen\u00adtie\u00adrung von <span class=\"caps\">SMT<\/span> im x86-Bereich stellt der Intel Xeon <span class=\"caps\">MP<\/span> dar, sowie der in k\u00fcrz\u00adlich von Intel vor\u00adge\u00adstell\u00adte Pen\u00adti\u00adum 4 mit 3.06 GHz und Hyper-Thre\u00ada\u00adding. Ob es einen Pro\u00adzes\u00adsor von <span class=\"caps\">AMD<\/span> mit Imple\u00admen\u00adtie\u00adrung von Simul\u00adta\u00adneous Mul\u00adti-Thre\u00ada\u00adding geben wird ist noch offen, jedoch wird man Intel lang\u00adfris\u00adtig gewi\u00df nicht nach\u00adste\u00adhen wollen.<br>\nDie fol\u00adgen\u00adden Aus\u00adf\u00fch\u00adrun\u00adgen sind aus\u00adschlie\u00df\u00adlich f\u00fcr den Intel Xeon <span class=\"caps\">MP<\/span> und Intel Pen\u00adti\u00adum 4 <span class=\"caps\">HT<\/span> zutref\u00adfend, da die Imple\u00admen\u00adtie\u00adrung von <span class=\"caps\">SMT<\/span> von jedem Her\u00adstel\u00adler anders gel\u00f6st wer\u00adden kann. Es kann dem\u00adzu\u00adfol\u00adge auch kei\u00adne gene\u00adrel\u00adle Aus\u00adsa\u00adge \u00fcber die Effek\u00adti\u00advi\u00adt\u00e4t von <span class=\"caps\">SMT<\/span> gemacht wer\u00adden. Um klar\u00adzu\u00adstel\u00adlen, dass mei\u00adne Aus\u00adf\u00fch\u00adrun\u00adgen ledig\u00adlich auf die genann\u00adten Pro\u00adzes\u00adso\u00adren zutref\u00adfen, wer\u00adde ich im fol\u00adgen\u00adden den Begriff ver\u00adwen\u00adden, mit dem Intel sei\u00adne Pro\u00adzes\u00adso\u00adren auch seg\u00adnet: Hyper-Thre\u00ada\u00adding, oder kurz&nbsp;<span class=\"caps\">HT<\/span>.<\/p>\n<p>Die Hyper-Thre\u00ada\u00adding Tech\u00adno\u00adlo\u00adgie macht, wie bereits erw\u00e4hnt, aus einem phy\u00adsi\u00adka\u00adli\u00adschen Pro\u00adzes\u00adsor zwei logi\u00adsche. Anga\u00adben von Intel zufol\u00adge wur\u00adde dies mit ledig\u00adlich 5% mehr Die-Fl\u00e4\u00adche erreicht und soll signi\u00adfi\u00adkan\u00adte Per\u00adfor\u00admance\u00advor\u00adtei\u00adle bie\u00adten. Jeder logi\u00adsche Pro\u00adzes\u00adsor besteht aus den acht x86 GPRs, den Kon\u00adtroll\u00adre\u00adgis\u00adtern, einem <span class=\"caps\">APIC<\/span> (inkl. <span class=\"caps\">APIC<\/span> Regis\u00adtern) und eini\u00adgen Maschi\u00adnen\u00adsta\u00adtus-Regis\u00adtern. Alle rest\u00adli\u00adchen, f\u00fcr den Betrieb ben\u00f6\u00adtig\u00adten Res\u00adsour\u00adcen wie Caches, Rechen\u00adein\u00adhei\u00adten, die Pipe\u00adline oder die Sprung\u00advor\u00adher\u00adsa\u00adge-Logik, m\u00fcs\u00adsen von den bei\u00adden Pro\u00adzes\u00adso\u00adren geteilt und somit gemein\u00adsam genutzt werden.<br>\nDas \u2014 Intel zufol\u00adge \u2014 h\u00f6chs\u00adte Ziel bei der Imple\u00admen\u00adtie\u00adrung von <span class=\"caps\">HT<\/span> in den Intel Xeon <span class=\"caps\">MP<\/span> war es zum einen, die Aus\u00adf\u00fch\u00adrung von ent\u00adspre\u00adchend opti\u00admier\u00adter Soft\u00adware zu beschleu\u00adni\u00adgen, jedoch gleich\u00adzei\u00adtig die Aus\u00adf\u00fch\u00adrung nicht-opti\u00admier\u00adter Soft\u00adware nicht zu ver\u00adlang\u00adsa\u00admen. Somit muss\u00adte zum einen sicher\u00adge\u00adstellt wer\u00adden, dass ein logi\u00adscher Pro\u00adzes\u00adsor den ande\u00adren nicht zum Still\u00adstand brin\u00adgen kann und zum ande\u00adren, dass die geteil\u00adten Res\u00adsour\u00adcen wie\u00adder ver\u00adeint wer\u00adden, wenn nur ein ein\u00adzel\u00adner Thread aus\u00adge\u00adf\u00fchrt wer\u00adden soll. Somit ist auch gleich ein wei\u00adte\u00adres Fea\u00adture eines Pro\u00adzes\u00adsors mit Hyper-Thre\u00ada\u00adding klar: Der Pro\u00adzes\u00adsor muss im lau\u00adfen\u00adden Betrieb zwi\u00adschen Mul\u00adti-Threa\u00added Betriebs\u00admo\u00addus und Sin\u00adgle-Threa\u00added Betriebs\u00admo\u00addus hin- und her\u00adschal\u00adten k\u00f6nnen.<\/p>\n<p><!--nextpage--><br>\n<b>Simul\u00adta\u00adneous Mul\u00adti-Thre\u00ada\u00adding (Fort\u00adset\u00adzung)<\/b><br>\nDa eine detail\u00adlier\u00adte Abhand\u00adlung von Hyper-Thre\u00ada\u00adding den Rah\u00admen die\u00adses Arti\u00adkels spren\u00adgen w\u00fcr\u00adde, wer\u00adde ich mich auf die Eck\u00adda\u00adten beschr\u00e4n\u00adken, beson\u00adders auf den Unter\u00adschied zwi\u00adschen einem Pro\u00adzes\u00adsor mit Hyper-Thre\u00ada\u00adding und einem ohne Hyper-Threading.<\/p>\n<p><b>Caches<\/b><br>\nDie Caches wer\u00adden gemein\u00adsam benutzt, das hei\u00dft jedem Pro\u00adzes\u00adsor steht effek\u00adtiv ledig\u00adlich der hal\u00adbe Cache sowie die hal\u00adbe Band\u00adbrei\u00adte zu. Jedoch muss man bei den Caches unter\u00adschei\u00adden zwi\u00adschen dem <span class=\"caps\">L1<\/span> Trace Cache sowie allen wei\u00adtern Caches (<span class=\"caps\">L1<\/span> Data Cache, <span class=\"caps\">L2<\/span> Cache, <span class=\"caps\">L3<\/span>&nbsp;Cache).<\/p>\n<p>Der <span class=\"caps\">L1<\/span> Trace Cache ist der Ersatz f\u00fcr den urspr\u00fcng\u00adlich <span class=\"caps\">L1<\/span> Ins\u00adtruc\u00adtion Cache genann\u00adten Teil der <span class=\"caps\">L1<\/span> Cache Struk\u00adtur. Im Gegen\u00adsatz zu die\u00adsem, spei\u00adchert der Trace Cache jedoch die bereits deco\u00addier\u00adten \u00b5Ops ab. Prin\u00adzi\u00adpi\u00adell ein her\u00advor\u00adra\u00adgen\u00addes Vor\u00adge\u00adhen, jedoch auf\u00adgrund der klei\u00adnen Gr\u00f6\u00ad\u00dfe des <span class=\"caps\">L1<\/span> Trace Cache (Intel spricht von 12.000 Ein\u00adtr\u00e4\u00adgen, was etwa 8 <span class=\"caps\">KB<\/span> ent\u00adspricht; zum Ver\u00adgleich: Der <span class=\"caps\">AMD<\/span> Ath\u00adlon <span class=\"caps\">XP<\/span> hat <span class=\"caps\">64KB<\/span> <span class=\"caps\">L1<\/span> Code Cache) stark aus\u00adge\u00adbremst. Bei zwei logi\u00adschen Pro\u00adzes\u00adso\u00adren sieht die Situa\u00adti\u00adon noch deut\u00adlich dras\u00adti\u00adscher aus, schlie\u00df\u00adlich ste\u00adhen hier jedem logi\u00adschen Pro\u00adzes\u00adsor nur noch 6.000 Spei\u00adcher\u00adpl\u00e4t\u00adze f\u00fcr \u00b5Ops im wich\u00adtigs\u00adten aller Caches zu. Jeder der logi\u00adschen Pro\u00adzes\u00adso\u00adren ver\u00adf\u00fcgt \u00fcber einen eige\u00adnen, vom ande\u00adren unab\u00adh\u00e4n\u00adgi\u00adgen Zei\u00adger in den Trace Cache, so dass Kon\u00adflik\u00adte von Haus aus ver\u00admie\u00adden werden.<br>\nVer\u00adsu\u00adchen bei\u00adde logi\u00adsche Pro\u00adzes\u00adso\u00adren gleich\u00adzei\u00adtig auf den <span class=\"caps\">L1<\/span> Trace Cache zuzu\u00adgrei\u00adfen, so wird ihnen abwech\u00adselnd Zugriff gew\u00e4hrt. Auch hier wird ein vor\u00adhan\u00adde\u00adnes Nadel\u00ad\u00f6hr noch\u00admals ver\u00adengt, schlie\u00df\u00adlich kann der <span class=\"caps\">L1<\/span> Trace Cache gra\u00adde mal drei \u00b5Ops pro Takt\u00adsi\u00adgnal an einen Pro\u00adzes\u00adsor wei\u00adter\u00adge\u00adben, was sich bei zwei logi\u00adschen auf theo\u00adre\u00adti\u00adsche 1,5 \u00b5Ops pro Takt\u00adsi\u00adgnal verringert.<br>\nWenn ein logi\u00adscher Pro\u00adzes\u00adsor sich im Still\u00adstand befin\u00addet oder kei\u00adne Daten aus dem <span class=\"caps\">L1<\/span> Tra\u00adche Cache ben\u00f6\u00adtigt, so hat der ande\u00adre die vol\u00adle Band\u00adbrei\u00adte und Zugriffs\u00adzeit zur Verf\u00fcgung.<\/p>\n<p>Der <span class=\"caps\">L1<\/span> Data Cache, der <span class=\"caps\">L2<\/span> Cache sowie der <span class=\"caps\">L3<\/span> Cache hin\u00adge\u00adgen, k\u00f6n\u00adnen von bei\u00adden logi\u00adschen Pro\u00adzes\u00adso\u00adren gemein\u00adsam genutzt wer\u00adden und alle Ein\u00adtr\u00e4\u00adge, unab\u00adh\u00e4n\u00adgig davon wel\u00adcher logi\u00adsche Pro\u00adzes\u00adsor den Ein\u00adtrag gemacht hat, von allen logi\u00adschen Pro\u00adzes\u00adso\u00adren gele\u00adsen wer\u00adden. Logi\u00adscher\u00adwei\u00adse sind hier\u00addurch Kon\u00adflik\u00adte vor\u00adpro\u00adgram\u00admiert, jedoch wur\u00adde hier sei\u00adtens Intel eis\u00adkalt kal\u00adku\u00adliert: Man nimmt bewu\u00dft den even\u00adtu\u00adell durch Kon\u00adflik\u00adte ver\u00adur\u00adsach\u00adten Per\u00adfor\u00admance\u00adver\u00adlust in Kauf, rech\u00adnet jedoch mit einem durch die gemein\u00adsa\u00adme Nut\u00adzung h\u00f6he\u00adren Leis\u00adtungs\u00adge\u00adwinn. So kann bei\u00adspiels\u00adwei\u00adse ein logi\u00adscher Pro\u00adzes\u00adsor bereits die Daten aus dem Spei\u00adcher in den Cache laden, die der ande\u00adre in K\u00fcr\u00adze ben\u00f6\u00adti\u00adgen wird. Bei Ser\u00adver Appli\u00adka\u00adtio\u00adnen ist dies \u00fcbri\u00adgens ganz nor\u00adma\u00adles Ver\u00adhal\u00adten (sie\u00adhe auch Cache-Pre\u00adfetch Logik des <span class=\"caps\">IBM<\/span> Power4) und auf\u00adgrund der Tat\u00adsa\u00adche, dass der Xeon <span class=\"caps\">MP<\/span> auf den Ser\u00adver\u00admarkt abzielt, ist die\u00adse L\u00f6sung ver\u00admut\u00adlich die geschickteste.<br>\nPro\u00adble\u00adma\u00adtisch wird die Ange\u00adle\u00adgen\u00adheit beim Pen\u00adti\u00adum 4 <span class=\"caps\">HT<\/span>, da die\u00adser auf dem SOHO-Markt abzielt. Wie er sich in der Pra\u00adxis bew\u00e4h\u00adren wird, muss sich jedoch erst noch zeigen.<\/p>\n<p><!--nextpage--><br>\n<b>Simul\u00adta\u00adneous Mul\u00adti-Thre\u00ada\u00adding (Fort\u00adset\u00adzung)<\/b><\/p>\n<p><u>Micro\u00adcode&nbsp;<span class=\"caps\">ROM<\/span><\/u><br>\nIm Micro\u00adcode <span class=\"caps\">ROM<\/span> lie\u00adgen bereits deco\u00addier\u00adte Instruk\u00adtio\u00adnen vor, deren Deco\u00addie\u00adrung auf\u00adgrund ihrer Kom\u00adple\u00adxi\u00adt\u00e4t (zur Erin\u00adne\u00adrung: <span class=\"caps\">CISC<\/span> = Com\u00adplex Ins\u00adtruc\u00adtion Set Com\u00adpu\u00adter) den Pro\u00adzes\u00adsor unn\u00f6\u00adtig lan\u00adge auf\u00adhal\u00adten w\u00fcr\u00adde. Das Micro\u00adcode <span class=\"caps\">ROM<\/span> ist also nichts wei\u00adter, als eine Tabel\u00adle mit allen kom\u00adple\u00adxen Ein\u00adtr\u00e4\u00adgen, auf die bei Bedarf zur\u00fcck\u00adge\u00adgrif\u00adfen&nbsp;wird.<br>\nWie beim <span class=\"caps\">L1<\/span> Trace Cache auch, gibt es hier zwei unab\u00adh\u00e4n\u00adgig von\u00adein\u00adan\u00adder ope\u00adrie\u00adren\u00adde Zei\u00adger, pro logi\u00adschen Pro\u00adzes\u00adsor einen. Die Ein\u00adtr\u00e4\u00adge sind geteilt, bei gleich\u00adzei\u00adti\u00adgen Zugrif\u00adfen wird auch hier takt\u00adwei\u00adse abwech\u00adselnd zugegriffen.<\/p>\n<p><u><span class=\"caps\">ITLB<\/span><\/u><br>\nDer <span class=\"caps\">ITLB<\/span> (Ins\u00adtruc\u00adtion Trans\u00adla\u00adti\u00adon Loo\u00adka\u00ads\u00adi\u00adde Buf\u00adfer, schnel\u00adler Puf\u00adfer\u00adspei\u00adcher f\u00fcr Instruk\u00adtio\u00adnen) kommt ins Spiel, wenn eine Instruk\u00adti\u00adon ben\u00f6\u00adtigt wird die sich nicht im <span class=\"caps\">L1<\/span> Trace Cache befin\u00addet. Der <span class=\"caps\">ITLB<\/span> emp\u00adf\u00e4ngt die Anwei\u00adsung vom Trace Cache bestimm\u00adte Daten zu lie\u00adfern und setzt den Ins\u00adtruc\u00adtion Poin\u00adter auf die phy\u00adsi\u00adka\u00adlisch anzu\u00adsprin\u00adgen\u00adde Adresse.<br>\nJeder logi\u00adsche Pro\u00adzes\u00adsor ver\u00adf\u00fcgt hier \u00fcber einen eige\u00adnen, unab\u00adh\u00e4n\u00adgi\u00adgen <span class=\"caps\">ITLB<\/span> inkl. aller ben\u00f6\u00adtig\u00adten Zei\u00adger, sowie einen eige\u00adnen 64 Byte Strea\u00adming Puf\u00adfer, aus dem die Daten anschlie\u00ad\u00dfend in den <span class=\"caps\">L1<\/span> Trace Cache geschrie\u00adben werden.<\/p>\n<p><u>Sprung\u00advor\u00adher\u00adsa\u00adge<\/u><br>\nDie Sprung\u00advor\u00adher\u00adsa\u00adge ist geteilt, ein Teil wur\u00adde ver\u00addop\u00adpelt, ein ande\u00adrer muss gemein\u00adsam benutzt wer\u00adden. Der Return Stack Puf\u00adfer wur\u00adde auf\u00adgrund sei\u00adner gerin\u00adgen Tran\u00adsis\u00adto\u00adren\u00adzahl ver\u00addop\u00adpelt, sowie der Tat\u00adsa\u00adche, dass R\u00fcck\u00adsprung\u00advor\u00adher\u00adsa\u00adgen deut\u00adlich effek\u00adti\u00adver und effi\u00adzi\u00aden\u00adter sind, wenn sie f\u00fcr jeden logi\u00adschen Pro\u00adzes\u00adsor sepa\u00adrat ver\u00adf\u00fcg\u00adbar&nbsp;sind.<\/p>\n<p>Das gro\u00ad\u00dfe Glo\u00adbal Histo\u00adry Array hin\u00adge\u00adgen muss gemein\u00adsam genutzt wer\u00adden, die ein\u00adzel\u00adnen Ein\u00adtr\u00e4\u00adge ver\u00adf\u00fc\u00adgen jedoch \u00fcber eine ein\u00addeu\u00adti\u00adge <span class=\"caps\">CPU-ID<\/span> und ver\u00adur\u00adsa\u00adchen somit kei\u00adner\u00adlei Konflikte.<\/p>\n<p><!--nextpage--><br>\n<b>Simul\u00adta\u00adneous Mul\u00adti-Thre\u00ada\u00adding (Fort\u00adset\u00adzung)<\/b><\/p>\n<p><u><span class=\"caps\">IA-32<\/span> Deco\u00adder<\/u><br>\n<span class=\"caps\">IA-32<\/span> Instruk\u00adtio\u00adnen sind vom Stand\u00adpunkt des Deco\u00adders her extrem m\u00fch\u00adse\u00adlig, ver\u00adf\u00fc\u00adgen sie doch \u00fcber eine varia\u00adble Instrunk\u00adti\u00adons\u00adl\u00e4n\u00adge, sowohl in L\u00e4n\u00adge als auch in m\u00f6g\u00adli\u00adchen Parametern\/Optionen. Daher ist der Deco\u00adder sehr kom\u00adplex und aus einer hohen Anzahl von Tran\u00adsis\u00adto\u00adren auf\u00adge\u00adbaut, wes\u00adhalb mal sich bei Intel daf\u00fcr ent\u00adschie\u00adden hat, den Deco\u00adder gemein\u00adsam zu nutzen.<\/p>\n<p>Der Deco\u00adder holt sich die <span class=\"caps\">IA-32<\/span> Instruk\u00adtio\u00adnen aus dem Strea\u00adming Puf\u00adfer und deco\u00addiert die\u00adse, so dass hand\u00adli\u00adche und RISC-\u00e4hn\u00adli\u00adche \u00b5Ops ent\u00adste\u00adhen, die anschlie\u00ad\u00dfend in den <span class=\"caps\">L1<\/span> Trace Cache geschrie\u00adben wer\u00adden. Im Gegen\u00adsatz zu sei\u00adnen Vor\u00adg\u00e4n\u00adgern (686) und Kon\u00adkur\u00adren\u00adten (<span class=\"caps\">K7<\/span>) arbei\u00adtet der \u2014 oft\u00admals zurecht \u2014 als \u201cver\u00adkr\u00fcp\u00adpelt\u201d (Darek Miho\u00adcka, Pen\u00adti\u00adum 4 in Depth) beschimpf\u00adte Deco\u00adder des Pen\u00adti\u00adum 4 ledig\u00adlich ein\u00adfach, oder anders aus\u00adge\u00addr\u00fcckt: Der Deco\u00adder des Pen\u00adti\u00adum 4 kann ledig\u00adlich eine Instruk\u00adti\u00adon pro Takt\u00adzy\u00adklus deco\u00addie\u00adren, wohin\u00adge\u00adgen der Pen\u00adti\u00adum <span class=\"caps\">III<\/span> sowie Ath\u00adlon bis zu drei Instruk\u00adtio\u00adnen pro Takt\u00adzy\u00adklus deco\u00addie\u00adren k\u00f6nnen.<br>\nIm Grun\u00adde genom\u00admen alles halb so wild, kom\u00admen doch ohne\u00adhin die meis\u00adten Instruk\u00adtio\u00adnen aus dem Trace-Cache und ben\u00f6\u00adti\u00adgen deut\u00adlich l\u00e4n\u00adger als einen Tyk\u00adt\u00adzy\u00adklus zum Aus\u00adf\u00fch\u00adren. Der Deco\u00adder mag zwar lang\u00adsam erschei\u00adnen, die Aus\u00adwir\u00adkun\u00adgen sind jedoch nicht so gra\u00advie\u00adren wie man zu Beginn meint.<\/p>\n<p>Kommt nun jedoch ein zwei\u00adter logi\u00adscher Pro\u00adzes\u00adsor mit hin\u00adzu, so stellt der Deco\u00adder pl\u00f6tz\u00adlich doch eine mas\u00adsi\u00adve Beschr\u00e4n\u00adkung dar. Bei par\u00adal\u00adle\u00adlen Zugrif\u00adfen muss ergo zwi\u00adschen den bei\u00adden logi\u00adschen Pro\u00adzes\u00adso\u00adren alter\u00adniert wer\u00adden. Hier\u00adbei zogen es die Inge\u00adnieu\u00adre vor, erst meh\u00adre\u00adre Instruk\u00adtio\u00adnen f\u00fcr einen logi\u00adschen Pro\u00adzes\u00adsor zu deco\u00addie\u00adren und anschlie\u00ad\u00dfend meh\u00adre\u00adre f\u00fcr den ande\u00adren. Bei unge\u00adschick\u00adtem Timing kann es hier also durch\u00adaus zu l\u00e4n\u00adge\u00adren War\u00adte\u00adzei\u00adten kom\u00admen, w\u00e4h\u00adrend denen ein logi\u00adscher Pro\u00adzes\u00adsor zum Nichts\u00adtun ver\u00addammt&nbsp;ist.<br>\nDen Grund f\u00fcr die Ent\u00adschei\u00addung, den Deco\u00adder gemein\u00adsam nut\u00adzen zu m\u00fcs\u00adsen, gibt Intel mit der enor\u00admen Ein\u00adspa\u00adrung an DIE-Gr\u00f6\u00ad\u00dfe an. Eine Ent\u00adschei\u00addung, die dem Xeon <span class=\"caps\">MP<\/span> und Pen\u00adti\u00adum 4 <span class=\"caps\">HT<\/span> letzt\u00adlich signi\u00adfi\u00adkant Per\u00adfor\u00admance kostet.<\/p>\n<p><!--nextpage--><br>\n<b>Simul\u00adta\u00adneous Mul\u00adti-Thre\u00ada\u00adding (Fort\u00adset\u00adzung)<\/b><\/p>\n<p><u>Regis\u00adter Renaming<\/u><br>\nDas sog. Regis\u00adter Ren\u00adaming befin\u00addet sich seit eini\u00adger Zeit in allen Mikro\u00adpro\u00adzes\u00adso\u00adren. Die RR-Logik benennt die acht GPRs (Gene\u00adral Pur\u00adpo\u00adse Regis\u00adters) auf phy\u00adsi\u00adka\u00adlisch end\u00adlich vor\u00adhan\u00adde\u00adne Regis\u00adter um. Dadurch wird die Ver\u00adwen\u00addung des Stack opti\u00admiert, auf dem nicht mehr der Inhalt aller Regis\u00adter son\u00addern ledig\u00adlich deren phy\u00adsi\u00adka\u00adli\u00adsche Adres\u00adse gespei\u00adchert wer\u00adden muss. Der Pen\u00adti\u00adum <span class=\"caps\">III<\/span> hat\u00adte hier jedoch einen schwe\u00adren Bug, der die\u00adses Fea\u00adture manch\u00admal unn\u00fctz mach\u00adte und den Pro\u00adzes\u00adsor enorm aus\u00adbrems\u00adte, der sog. \u201cPar\u00adti\u00adal Regis\u00adter&nbsp;Stall\u201d.<br>\nDie eigent\u00adli\u00adche Umwand\u00adlung der somit nur noch vir\u00adtu\u00adell vor\u00adhan\u00adde\u00adnen GPRs erfolgt mit Hil\u00adfe einer sog. <span class=\"caps\">RAT<\/span> (Regis\u00adter Allo\u00adca\u00adti\u00adon Table, zu deutsch etwa Regis\u00adter Bele\u00adgungs\u00adta\u00adbel\u00adle). Da jeder logi\u00adsche Mikro\u00adpro\u00adzes\u00adsor sei\u00adne eige\u00adnen Regis\u00adter hat, ben\u00f6\u00adtigt er auch sei\u00adne eige\u00adne <span class=\"caps\">RAT<\/span>, die daher dop\u00adpelt vor\u00adhan\u00adden&nbsp;ist.<\/p>\n<p><u>Ins\u00adtruc\u00adtion Scheduling<\/u><br>\nHier liegt das eigent\u00adli\u00adche Herz der Out-of-Order Exe\u00adcu\u00adti\u00adon Engi\u00adne. Die\u00adse sorgt daf\u00fcr, dass die Instruk\u00adtio\u00adnen, sobald die ent\u00adspre\u00adchen\u00adden Rechen\u00adein\u00adhei\u00adten ver\u00adf\u00fcg\u00adbar sind, wei\u00adter\u00adge\u00adlei\u00adtet wer\u00adden, unab\u00adh\u00e4n\u00adgig vom eigent\u00adli\u00adchen Pro\u00adgramm\u00adfluss. Die ein\u00adzi\u00adge Ein\u00adschr\u00e4n\u00adkung sind von\u00adein\u00adan\u00adder abh\u00e4n\u00adgi\u00adge Instruk\u00adtio\u00adnen. Rech\u00adnet bei\u00adspiels\u00adwei\u00adse Instruk\u00adti\u00adon A mit dem Ergeb\u00adnis aus Instruk\u00adti\u00adon B, so kann A logi\u00adscher\u00adwei\u00adse nicht vor B aus\u00adge\u00adf\u00fchrt werden.<\/p>\n<p>Der Ins\u00adtruc\u00adtion Sche\u00addu\u00adler emp\u00adf\u00e4ngt alle Instruk\u00adtio\u00adnen und k\u00fcm\u00admert sich um die zeit\u00adge\u00adrech\u00adte Zutei\u00adlung an die Rechen\u00adein\u00adhei\u00adten. Genau genom\u00admen sind es f\u00fcnf Ins\u00adtruc\u00adtion Sche\u00addu\u00adler, die zusam\u00admen pro Takt\u00adzy\u00adklus bis zu sechs \u00b5Ops durch\u00adrei\u00adchen k\u00f6n\u00adnen. Jeder Sche\u00addu\u00adler ver\u00adf\u00fcgt \u00fcber eine eige\u00adne Sche\u00addu\u00adler Queue, wel\u00adche sich die bei\u00adde logi\u00adschen Pro\u00adzes\u00adso\u00adren tei\u00adlen m\u00fcs\u00adsen. Hier\u00adbei wird nicht zwi\u00adschen \u00b5Ops des einen oder ande\u00adren Pro\u00adzes\u00adsors bei der Zutei\u00adlung ent\u00adschie\u00adden, ledig\u00adlich der Sta\u00adtus der Instruk\u00adtio\u00adnen sowie die Ver\u00adf\u00fcg\u00adbar\u00adkeit der Rechen\u00adein\u00adhei\u00adten spie\u00adlen eine Rol\u00adle. Um jedoch Gleich\u00adheit zu wah\u00adren, sind die Queu\u00ades par\u00adti\u00adtio\u00adniert, jeder Pro\u00adzes\u00adsor kann also nur eine bestimm\u00adte Anzahl an Ein\u00adtr\u00e4\u00adgen belegen.<\/p>\n<p><!--nextpage--><br>\n<b>Simul\u00adta\u00adneous Mul\u00adti-Thre\u00ada\u00adding (Fort\u00adset\u00adzung)<\/b><\/p>\n<p><u>Beson\u00adder\u00adhei\u00adten des HyperThreading<\/u><br>\nWie zu Beginn des SMT-Tei\u00adles die\u00adses Arti\u00adkels bereits erw\u00e4hnt, war eines der Zie\u00adle f\u00fcr die Imple\u00admen\u00adtie\u00adrung von Hyper-Thre\u00ada\u00adding, die im Ver\u00adgleich zu einem gleich\u00adschnell getak\u00adte\u00adten Pro\u00adzes\u00adsor ohne Hyper-Thre\u00ada\u00adding, iden\u00adti\u00adsche Aus\u00adf\u00fchr\u00adge\u00adschwin\u00addig\u00adkeit von nicht Mul\u00adti-Threa\u00added Anwendungen.<\/p>\n<p>Jedoch ist dies rech\u00adne\u00adrisch mit halb so gro\u00ad\u00dfen Cache, halb so schnel\u00adlem Deco\u00adder und den wei\u00adte\u00adren beschrie\u00adbe\u00adnen Begren\u00adzun\u00adgen und Besch\u00e4n\u00adkun\u00adgen durch gemein\u00adsa\u00adme Nut\u00adzung der Res\u00adsour\u00adcen nicht m\u00f6g\u00adlich. Des\u00adhalb kann der Pro\u00adzes\u00adsor \u2014 im lau\u00adfen\u00adden Betrieb \u2014 in den sog. Sin\u00adgle-Task Modus geschal\u00adtet wer\u00adden. Im <span class=\"caps\">ST0<\/span>\/<span class=\"caps\">ST1<\/span> Mode (<span class=\"caps\">ST0<\/span> = logi\u00adscher Pro\u00adzes\u00adsor 1 ist \u00fcber <span class=\"caps\">HALT<\/span> inak\u00adtiv gesetzt wor\u00adden, <span class=\"caps\">ST1<\/span> = logi\u00adscher Pro\u00adzes\u00adsor 0 ist \u00fcber <span class=\"caps\">HALT<\/span> inak\u00adtiv gesetzt wor\u00adden) wer\u00adden alle zuvor par\u00adti\u00adtio\u00adnier\u00adten oder gemein\u00adsam benutz\u00adten Res\u00adsour\u00adcen ver\u00adeint und ste\u00adhen einem ein\u00adzi\u00adgen logi\u00adschen Pro\u00adzes\u00adsor zur Ver\u00adf\u00fc\u00adgung. Der ande\u00adre logi\u00adsche Pro\u00adzes\u00adsor ruht w\u00e4h\u00adrend die\u00adser&nbsp;Zeit.<\/p>\n<p>Erreicht wird dies durch Anwen\u00addung des HALT-Befehls auf einen logi\u00adschen Pro\u00adzes\u00adsor. Wird bei\u00adspiels\u00adwei\u00adse <span class=\"caps\">HALT<\/span> auf den logi\u00adschen Pro\u00adzes\u00adsor 0 ange\u00adwandt, so geht die\u00adser in den Schlaf\u00admo\u00addus \u00fcber und alle Res\u00adsour\u00adcen k\u00f6n\u00adnen vom logi\u00adschen Pro\u00adzes\u00adsor 1 ver\u00adwen\u00addet wer\u00adden. Wird auch die\u00adser per <span class=\"caps\">HALT<\/span> in den Schlaf\u00admo\u00addus geschickt, so geht der gesam\u00adte Pro\u00adzes\u00adsor in den C1-Mode \u00fcber und schlum\u00admert vor sich hin. Der \u00dcber\u00adgang vom <span class=\"caps\">ST0<\/span>\/<span class=\"caps\">ST1<\/span> Mode in den <span class=\"caps\">MT<\/span> Mode (Mul\u00adti-Task, zwei logi\u00adsche Pro\u00adzes\u00adso\u00adren ver\u00adf\u00fcg\u00adbar) geschieht auf einen Inter\u00adrupt an einen logi\u00adschen Pro\u00adzes\u00adsor&nbsp;hin.<\/p>\n<p>Die Kon\u00adtrol\u00adle unter\u00adliegt dem Betriebs\u00adsys\u00adtem, wes\u00adhalb Intel auch expli\u00adzit dar\u00adauf hin\u00adweist, dass even\u00adtu\u00adell \u00c4nde\u00adrun\u00adgen in den bestehen\u00adden Betriebs\u00adsys\u00adte\u00admen n\u00f6tig sein k\u00f6nn\u00adten. Zum einen muss logi\u00adscher\u00adwei\u00adse <span class=\"caps\">SMP<\/span> unter\u00adst\u00fctzt wer\u00adden, schlie\u00df\u00adlich ist ein Mikro\u00adpro\u00adzes\u00adsor mit Hyper-Thre\u00ada\u00adding Tech\u00adno\u00adlo\u00adgie von Sicht des Betriebs\u00adsys\u00adtems aus ein her\u00adk\u00f6mm\u00adli\u00adches SMP-System.<br>\nWei\u00adter\u00adhin soll\u00adte das Betriebs\u00adsys\u00adtem den HALT-Befehl expli\u00adzit nut\u00adzen, wenn nur ein Pro\u00adzes\u00adsor ben\u00f6\u00adtigt wird. Denn ist dies nicht der Fall, f\u00fchrt das Betriebs\u00adsys\u00adtem einen sog. Idle-Loop durch, der jedoch einen signi\u00adfi\u00adkan\u00adten Teil der ver\u00adf\u00fcg\u00adba\u00adren Res\u00adsour\u00adcen auf\u00adbraucht und den Pro\u00adzes\u00adsor dadurch aus\u00adlas\u00adtet. Die\u00adse Res\u00adsour\u00adcen ste\u00adhen dann logi\u00adscher\u00adwei\u00adse dem reel\u00adlen Code aus\u00adf\u00fchr\u00adba\u00adren Pro\u00adzes\u00adsor nicht mehr zur Ver\u00adf\u00fc\u00adgung und sind somit verschwendet.<\/p>\n<p>Eine letz\u00adte Opti\u00admie\u00adrung betrifft den Ein\u00adsatz von HT-f\u00e4hi\u00adgen Pro\u00adzes\u00adso\u00adren in SMP-Sys\u00adte\u00admen. Hier\u00adbei soll\u00adte das Betriebs\u00adsys\u00adtem Auf\u00adga\u00adben zun\u00e4chst an phy\u00adsisch vor\u00adhan\u00adde\u00adne Pro\u00adzes\u00adso\u00adren zutei\u00adlen und anschlie\u00ad\u00dfend erst auf die logi\u00adschen zur\u00fcck\u00adgrei\u00adfen. So wird letzt\u00adend\u00adlich eine opti\u00adma\u00adle Aus\u00adlas\u00adtung aller vor\u00adhan\u00adde\u00adnen \u2014 irrele\u00advant ob logisch oder phy\u00adsisch \u2014 sichergestellt.<\/p>\n<!--nextpage-->\n<div style=\"text-align: center;\"><img decoding=\"async\" src=\"http:\/\/www.planet3dnow.de\/artikel\/diverses\/doping\/images\/titel.png\" border=\"0\" alt onload=\"NcodeImageResizer.createOn(this);\"><\/div>\n<p>\nIch hof\u00adfe, auf den zur\u00fcck\u00adlie\u00adgen\u00adden 19 Sei\u00adten einen gro\u00adben \u00dcber\u00adblick \u00fcber den aktu\u00adel\u00adlen Stand der Tech\u00adnik sowie \u00fcber aktu\u00adel\u00adle Ent\u00adwick\u00adlun\u00adgen gege\u00adben zu haben. Zuge\u00adge\u00adben, es han\u00addelt sich hier\u00adbei ledig\u00adlich um einen klei\u00adnen Abriss. \u00dcber jeden ein\u00adzel\u00adnen der Unter\u00adpunk\u00adte las\u00adsen sich B\u00fccher und Rega\u00adle f\u00fcl\u00adlen, die jedoch im End\u00adef\u00adfekt dann doch nur Infor\u00adma\u00adti\u00adker und Inge\u00adnieu\u00adre interessieren.<\/p>\n<p>Wer Ver\u00adst\u00e4nd\u00adnis\u00adpro\u00adble\u00adme hat, dem emp\u00adfeh\u00adle ich das <a href=\"http:\/\/www.planet3dnow.de\/vbulletin\/index.php\" target=\"_blank\">Pla\u00adnet 3DNow! Forum<\/a>, im spe\u00adzi\u00adel\u00adlen den unten ange\u00adge\u00adbe\u00adnen Link zu Kom\u00admen\u00adta\u00adren. \u00dcber Feed\u00adback w\u00fcr\u00adde ich mich sehr freu\u00aden, eben\u00adso \u00fcber Fra\u00adgen zum Arti\u00adkel, egal ob Ver\u00adst\u00e4nd\u00adnis\u00adfra\u00adge, Fra\u00adgen zu erg\u00e4n\u00adzen\u00addem Wis\u00adsen oder Fra\u00adgen zu tech\u00adni\u00adschen Aspekten.<\/p>\n<p>Wer sich wei\u00adter\u00adbil\u00adden m\u00f6ch\u00adte, dem kann ich fol\u00adgen\u00adde Arti\u00adkel zur genau\u00aden Lek\u00adt\u00fc\u00adre empfehlen:<\/p>\n<ul>\n<li><a href=\"http:\/\/www.planet3dnow.de\/vbulletin\/showthread.php?t=352930\" target=\"_blank\">64 Bit Pro\u00adzes\u00adso\u00adren im Wohn\u00adzim\u00admer: Inno\u00adva\u00adti\u00adon oder Marketinggeblubber<\/a><\/li>\n<li><a href=\"http:\/\/www.emulators.com\/docs\/pentium_1.htm\" target=\"_blank\">Pen\u00adti\u00adum 4 in Depth \u2014 Teil 1<\/a> (Teil 2\u20134 nicht mehr emp\u00adfeh\u00adlens\u00adwert, Teil 1 da Ana\u00adly\u00adse des P4-Kerns)<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Ein\u00adlei\u00adtung Einen neu\u00aden Com\u00adpu\u00adter zu kau\u00adfen, ist etwas sch\u00f6\u00adnes. Man inves\u00adtiert oft\u00admals viel Geld in teu\u00adre Hard\u00adware, in der Hoff\u00adnung, dass die\u00adse m\u00f6g\u00adlichst lan\u00adge ihren Dienst leis\u00adtet. F\u00fcr den Heim\u00adan\u00adwen\u00adder oder Fir\u00ad\u00admen-PC ist dies auch der Fall, neue Hard\u00adware kann hier bis zu f\u00fcnf Jah\u00adre lang die Bed\u00fcrf\u00adnis\u00adse des Besit\u00adzers durch\u00adaus befrie\u00addi\u00adgen. Nicht so jedoch, (\u2026) <a class=\"moretag\" href=\"https:\/\/www.planet3dnow.de\/cms\/20378-doping-fuer-cpus-moeglichkeiten-der-leistungssteigerung\/\">Wei\u00adter\u00adle\u00adsen&nbsp;\u00bb<\/a><\/p>\n","protected":false},"author":23,"featured_media":20383,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"wp_typography_post_enhancements_disabled":false,"ngg_post_thumbnail":0,"footnotes":""},"categories":[2,8],"tags":[918,108,919,917,916],"class_list":["post-20378","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-artikel","category-prozessoren","tag-cache","tag-cpu","tag-out-of-order-execution","tag-smp","tag-smt","entry"],"share_on_mastodon":{"url":"","error":""},"_links":{"self":[{"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/posts\/20378","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/comments?post=20378"}],"version-history":[{"count":5,"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/posts\/20378\/revisions"}],"predecessor-version":[{"id":20384,"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/posts\/20378\/revisions\/20384"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/media\/20383"}],"wp:attachment":[{"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/media?parent=20378"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/categories?post=20378"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.planet3dnow.de\/cms\/wp-json\/wp\/v2\/tags?post=20378"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}