Wat is symmetrische multiprocessing?

Symmetric multiprocessing (SMP) is een type computerarchitectuur waarin twee of meer centrale verwerkingseenheden (CPU's) een gemeenschappelijke link naar hetzelfde geheugen delen. Het werd oorspronkelijk ontwikkeld in de jaren 1960 en is sindsdien in verschillende configuraties gebruikt. Elke processor in een SMP-systeem kan toegang krijgen tot en software uitvoeren vanuit elk deel van het gedeelde geheugen. De populariteit van deze opstelling is in de loop van het jaar fluctuerend naarmate de technologie is geëvolueerd en de markt is veranderd, maar het is nog steeds een van de meest voorkomende vormen van multiprocessortechnologieën.

SMP is ontstaan ​​in de vroege jaren zestig als een manier om meerdere processors via een hogesnelheidsverbinding aan te sluiten en hen toegang te geven tot dezelfde set geheugenmodules. Omdat het geheugen wordt gedeeld tussen processors, kan SMP-hardware goedkoper zijn dan andere technologieën die geheugen kunnen toewijzen aan elke processor. Veel variaties van deze opstelling zijn gebruikt, waarbij sommige een eenvoudige dwarsbalk gebruikten om twee processors aan te sluiten, terwijl anderen meer geavanceerde interconnecties gebruikten tussen maar liefst 32 processors. Elk symmetrisch multiprocessorsysteem kan worden tegengehouden door de snelheid en capaciteit van deze interconnect; een systeem met 32 ​​processors zal niet noodzakelijkerwijs 32 keer sneller zijn omdat de gemeenschappelijke koppeling tussen deze processors en het systeemgeheugen verstopt kan raken.

Een belangrijk voordeel van symmetrische multiprocessing ten opzichte van andere technieken is dat een SMP-systeem al zijn processors min of meer gelijk behandelt, waardoor elk dezelfde kwaliteit toegang krijgt tot andere computerhardware. Dit betekent dat elke processor in het systeem instructies van softwareprogramma's kan lezen en uitvoeren, ongeacht waar deze programma's zich in het geheugen van de computer bevinden. Veel softwareprogramma's zijn nu opgesplitst in kleinere brokken, threads genoemd; wanneer deze programma's op een SMP-systeem worden uitgevoerd, kan elke processor een thread van het programma uitvoeren, waardoor de algehele prestaties verder worden verbeterd. Software op gebruikersniveau hoeft niet te worden aangepast om te worden uitgevoerd op een systeem dat symmetrische multiprocessing ondersteunt, maar het onderliggende besturingssysteem moet de technologie ondersteunen.

De populariteit van symmetrische multiprocessing is in de loop der jaren afgenomen en toegenomen, terwijl andere technieken zijn ontwikkeld en nieuwe architecturen zijn verkend. Publiciteit over de mogelijke impact van de technologie op informatica ontstond begin jaren negentig; een aantal bedrijven, met name Sequent Computer Systems, begonnen zich te specialiseren in het bouwen van hoogwaardige SMP-systemen. Sequent, dat in 1999 door IBM werd overgenomen, werd geprezen om zijn ontwerpen, maar kon nooit effectief concurreren met de reuzen van de computerindustrie. Nieuwere multiprocestechnieken zoals niet-uniforme geheugentoegang (NUMA) hebben SMP gedeeltelijk vervangen in high-end systemen.

Computerfabrikanten hebben in de loop der jaren geëxperimenteerd met symmetrische multiprocessing in hardware op consumentenniveau; buiten dure enthousiaste hardware missen de meeste personal computers echter de technologie. Nieuwe technieken om systemen met één CPU efficiënter te maken, zoals gelijktijdig multithreading of "hyperthreading", samen met de opkomst van multicore-technologie hebben de prestaties van computers verbeterd zonder de extra kosten van SMP. Het is echter mogelijk om deze technologieën te combineren, en de krachtigste desktopcomputers kunnen meerdere multicore-processors bevatten die via SMP zijn verbonden, waardoor een systeem met enorme hoeveelheden rekenkracht ontstaat.

ANDERE TALEN

heeft dit artikel jou geholpen? bedankt voor de feedback bedankt voor de feedback

Hoe kunnen we helpen? Hoe kunnen we helpen?