Op Real World Technologies is een artikel verschenen over de nieuwe X3-chipset van IBM. Deze werd eind februari aangekondigd en zette toen direct al een aantal indrukwekkende benchmarkrecords neer. IBM beweerde zelfs dat architectuur van de chipset zo goed was, dat de dure Xeon MP Potomac met 8MB aan L3-cache er niet sneller op zou draaien dan de normale Cranford-core zonder L3. Toen Intel even later zijn eigen Twin Castle introduceerde, met oppervlakkig gezien gelijkwaardige specificaties (zoals acht kanalen DDR2-geheugen en een dubbele 667MHz FSB), werd die claim min of meer bevestigd. De vraag die het artikel probeert te beantwoorden is hoe IBM het budget van 100 miljoen dollar heeft besteed om de X3-chipset zo sterk te maken.
Het antwoord zit voornamelijk in de manier waarop de X3-chipset de sychronisatie tussen de verschillende processors afhandelt. De Xeon gebruikt normaal een broadcast-protocol om al zijn broertjes te waarschuwen zodra hij op een bepaald adres data heeft geschreven. Iedere andere processor die hetzelfde adres in zijn cache heeft staan weet dan dat eerst de nieuwe versie opgehaald moet worden voor er weer iets met die data gedaan mag worden. Voor relatief kleine systemen is dit een simpele doch effectieve methode om de caches coherent te houden. Voor zwaardere jongens (acht of meer processors) gaat het broadcasten van al die synchronisatiegegevens echter zoveel bandbreedte slurpen dat er steeds minder overblijft om bijvoorbeeld in het geheugen te lezen. Serverchipsets maken daarom vrijwel altijd gebruik van een directory-systeem, waarbij een centraal mechanisme scheidrechter speelt. Omdat deze precies bijhoudt welke processors met welke data aan het spelen zijn wordt een hoop overbodig busverkeer bespaard. Het nadeel daarvan is echter weer dat het latency-verhogend werkt (voor iets uit het geheugen kan worden gelezen moet bijvoorbeeld toestemming gevraagd worden) en een directory is dus minder geschikt voor relatief kleine systemen. Voor X3 heeft IBM een hybride architectuur bedacht die de voordelen van broadcast en directory combineert.

Binnen een quad (de term die IBM gebruikt voor een blok van vier sockets) wordt in principe gewoon gebruikgemaakt van standaard broadcasts, maar er is in de chipset wel een snoop filter geplaatst met ~6MB aan cache om te voorkomen dat de processors elkaar onnodig lastigvallen. Voor communicatie met andere quads (X3 ondersteunt er maximaal acht in één systeem) wordt daarentegen een directory gebruikt. In grotere systemen wordt een deel van het eDRAM op de chipset zelf en een stuk geheugen door het BIOS gereserveerd als L4-cache, zodat de chipset zelf kan uitzoeken waar (de laatste versie van) bepaalde data zich bevindt, zonder dat alle processors daarvoor lastiggevallen moeten worden. Het mooie is dat de 'balans' tussen de hoeveelheid geheugen die beschikbaar is voor het snoop filter en voor directory-taken door het BIOS kan worden ingesteld. Op dit moment is het weliswaar nog niet iets wat de gebruiker zelf kan tweaken, maar het levert IBM als leverancier wel een hoop flexibiliteit op om hun servers voor specifieke configuraties en situaties te tunen.
Meer informatie over het geheugensysteem, latencies, de IOMMU, scalability ports en I/O-capaciteiten van de X3-chipset is hier te vinden.