Ja? En? Dus?
We zijn dan inmiddels ruim 4 jaar verder sinds de eerste Athlon64 en ruim 2 jaar verder als de eerste Dual Core. Denk je dat AMD stil gezeten heeft intussen?
Nee, ze hebben dus de shared L3 toegevoegd omdat de crossbar alleen niet voldoende was, zoals ik hierboven al zei.
Dan kun je wel leuk gaan roepen over die crossbar, maar dat is net zo dom als roepen "Ja, maar Intel heeft ook nog de FSB!" (misschien dat je het nu wat beter snapt).
Hij onderbouwt waarom hij denkt dat het met L3 icm Crossbar sneller werkt. Net als jij dat doet als je denkt dat het niet zo is.
Ik denk niks, ik weet het.
Een crossbar is gewoon niet snel genoeg om alle caches te synchroniseren. Iedereen die daar een beetje over nadenkt, begrijpt dat.
Core2 bewijst dat je zelfs met 2 cores al een behoorlijke winst kunt halen uit een shared cache tov de crossbar van de Athlon64. Met 4 cores heb je nog veel meer werk te doen om alle caches gesynchroniseerd te houden. Met alleen een crossbar ga je het dus nooit redden, ook al is ie 4 keer zo snel als de crossbar van de Athlon64. Het is gewoon geen efficiente oplossing, omdat je steeds dezelfde data opnieuw moet lezen en schrijven. Een cacheline die veranderd is in core 1 moet naar cores 2, 3, en 4 gekopieerd worden. En dit dus voor alle 4 de cores.
Nu gaat het via de L3 cache... core 1 hoeft het dus maar 1 keer te kopieren... Daarna staat het gebufferd, en kunnen de andere 3 cores het uitlezen wanneer ze willen. Core 1 kan dus verder ongestoord doorwerken.
Zie ook hier:
http://www.anandtech.com/...s/showdoc.aspx?i=2939&p=9
De L3-cache weet dus specifiek of er data in cachelines geshared is, en zo ja, dan houdt hij altijd een kopietje van die cacheline, zodat alle cores deze snel kunnen uitlezen.
Dit is dus veel sneller dan steeds die cachelines via de crossbar heen en weer pompen, zoals nu in de Athlon X2 gedaan wordt, en ook op multi-socket systemen.
Het grootste nadeel hierbij is dat het protocol van die crossbar niet goed met random requests om kan gaan. Zolang je grote stukken tegelijk overpompt, presteert het aardig, maar bij minder voorspelbare zaken zakt het gauw in. Dat is hopelijk verholpen met de L3-cache... Al is Intel dus een niveau hoger bezig, op L2-cache, waardoor bij Intel de best-case sneller is. Er hoeft ook minder gedaan te worden, omdat alleen de L1-cache synchroon gehouden dient te worden, en die is gewoon een stuk kleiner dan de L2-cache.
[Reactie gewijzigd door Verwijderd op 23 juli 2024 05:45]