Doping für CPUs — Möglichkeiten der Leistungssteigerung

Artikel-Index:

Ansätze der Optimierung per Hardware (Multi-Processing)

OnChip Mul­ti-Pro­ces­sing
Das onChip Mul­ti-Pro­ces­sing (kurz CMP) kom­bi­niert zwei von­ein­an­der unab­hän­gi­ge Pro­zes­so­ren auf einem ein­zel­nen Die. Ähn­lich wie beim im noch zu erläu­tern­den Simul­ta­neous Mul­ti-Thre­a­ding, wer­den beim CMP ver­schie­de­ne Res­sour­cen gemein­sam benutzt, ande­re wie­der­um ste­hen exklu­siv zur Ver­fü­gung. Da in der x86-Welt (noch) kein CMP-Sys­tem exis­tiert, wer­de ich mei­ne fol­gen­den Aus­füh­run­gen auf den Power4 Ser­ver­pro­zes­sor von IBM beziehen.

Der Power4 ist ein sol­cher CMP-fähi­ger Mikro­pro­zes­sor, der auf einem Die zwei Pro­zes­so­ren unter­bringt. Im Unter­schied zu einem Com­pu­ter mit zwei phy­si­ka­li­schen Mikro­pro­zes­so­ren müs­sen sich die bei­den des Power4 unter ande­rem die Caches teil­wei­se tei­len. Teil­wei­se bedeu­tet in die­sem Fall, dass jeder der bei­den onChip Pro­zes­so­ren über einen eige­nen L1-Cache ver­fügt, der L2-Cache (~ 1.5MB) sowie L3-Cache (32 — 128 MB) jedoch gemein­sam genutzt werden.
Dies muss jedoch nicht zwin­gend einen Nach­teil dar­stel­len, so kann bei­spiels­wei­se bei ange­pass­ter Soft­ware ein Pro­zes­sor bereits die benö­tig­ten Daten in den L2-Cache schau­feln, die der ande­re in Kür­ze benö­ti­gen wird. Durch opti­ma­le Pro­gram­mie­rung ist hier also tat­säch­lich nahe­zu opti­ma­le Aus­nut­zung der Res­sour­cen mög­lich. Den­noch darf nicht ver­schwie­gen wer­den, dass bei gemein­sam genutz­ten Spei­chern immer die Gefahr des Kon­flikts besteht.

Der Nach­teil einer sol­chen Umset­zung liegt jedoch auf der Hand: In Desk­top-Pro­zes­so­ren ist CMP unprak­ti­ka­bel, da sowohl die Kos­ten für die Her­stel­lung, als auch der Ener­gie­ver­brauch sehr hoch sind. Ob die­ser Grün­de ist stark anzu­neh­men, dass CMP für den Markt der Heim­com­pu­ter auch wei­ter­hin eine unter­ge­ord­ne­te Rol­le spie­len wird.