Asymetrické multiprocesování

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 7. dubna 2019; kontroly vyžadují 12 úprav .

AMP nebo ASMP (z angličtiny: Asymmetric multiprocessing , rusky: Asymmetric multiprocessing nebo Asymmetric multiprocessing ) je typ architektury víceprocesorového počítačového systému, který se používal před vytvořením technologie symetrického multiprocesingu (SMP). Používá se také jako levnější alternativa na systémech, které podporovaly SMP.

V systému s asymetrickým multiprocesingem nehrají všechny procesory stejnou roli. Systém může například používat (buď na úrovni hardwaru nebo na úrovni operačního systému) pouze jeden procesor k provádění kódu operačního systému nebo přiřadit pouze jeden procesor k provádění I/O operací. V jiných systémech AMP mohou všechny procesory provádět kód operačního systému a I/O operace, takže se z této strany chovají jako symetrický víceprocesorový systém, ale určité periferie lze připojit pouze k jednomu procesoru, takže ze strany práce s tímto systém vypadá asymetricky s hardwarem.

Historie

V 60. a 70. letech 20. století jste mohli zvýšit výpočetní výkon počítače jednoduše přidáním dalšího procesoru. Přidání dalšího identického procesoru bylo levnější než nákup nového počítače, který byl dvakrát rychlejší. Pouhé přidání dalšího procesoru bylo také výhodnější než nákup druhého celého počítače, který vyžadoval samostatnou počítačovou místnost, další periferní zařízení a personál údržby.

První systémy, ke kterým mohl být přidán druhý procesor, byly Burroughsův B5000, DECsystem-1055 a IBM System/360 model 65MP. Některé univerzity navíc postavily také experimentální počítače s duálními procesory [1] .

Problém s přidáním procesoru však byl v tom, že tehdejší operační systémy byly navrženy pouze pro jednoprocesorové počítače a provádění změn tak, aby spolehlivě podporovaly dva procesory, bylo časově náročné. Aby se tento problém obešel, operační systémy s podporou jednoho procesoru byly jen mírně upraveny, aby poskytovaly minimální podporu pro druhý procesor. „Minimální podpora“ znamenala, že operační systém běžel na „zaváděcím procesoru“ (spouštěcím procesoru) a na druhém procesoru byly spouštěny pouze uživatelské programy. Například v Burroughs B5000 druhý procesor neměl schopnost provádět „řídící kód“ v hardwaru [2] .

V jiných systémech mohl operační systém běžet na kterémkoli z procesorů, ale buď byly všechny periferie připojeny pouze k jednomu procesoru, nebo bylo možné přes každý procesor přistupovat pouze k určitým periferiím.

Burroughs B5000

Burroughs B5000 [2] může volitelně přidat „procesor B“. Tento druhý procesor na rozdíl od „Procesoru A“ neměl přístup k periferiím, ale oba procesory měly přístup ke sdílené paměti. Operační systém běžel pouze na procesoru A a uživatelská úloha běžela na procesoru B. Když uživatelská úloha potřebovala přístup k funkcím operačního systému, procesor B vydal systémové volání kódu operačního systému na procesoru A, zastavil se a čekal na kód operačního systému. zpracovat systémové volání a teprve po obdržení výsledku zpracování systémového volání pokračovat v práci. [3] .

CDC 6500 a 6700

Control Data Corporation nabízela dvě varianty v „řadě CDC 6000“, která měla dva procesory: CDC 6500 [4] dvouprocesorový CDC 6400 a CDC 6700, což byl superpočítač CDC 6600 s přidaným procesorem CDC 6400. .

Tyto systémy byly postaveny poněkud odlišně než ostatní víceprocesorové systémy uvedené v tomto článku. Operační systém zde fungoval pouze na periferních procesorech a uživatelská úloha fungovala na centrálních procesorech. Tyto systémy tedy de facto nemohou být ani systémy AMP, ani systémy SMP .

DECsystem-1055

Společnost Digital Equipment Corporation (DEC) nabídla zákazníkům verzi jejich počítače DECsystem-1050 se dvěma procesory KA10 [5] [6] . Pak byla stejná možnost přítomna v řadě počítačů PDP-10.

PDP-11/74

Společnost Digital Equipment Corporation vyvinula, ale nikdy nepřinesla na trh, víceprocesorovou verzi počítače PDP-11  , PDP-11/74 [7] , která provozovala víceprocesorovou verzi operačního systému RSX-11M [8] . V tomto systému mohl kterýkoli z procesorů spouštět kód operačního systému a provádět I/O, ale ne všechny periferie byly dostupné pro každý z procesorů – většina periferií byla připojena pouze k jednomu procesoru, takže procesor bez periferií pro práci jakýkoli procesor-soused zařízení musí odeslat speciální požadavek [8] .

VAX-11/782

První víceprocesorový počítač DEC VAX ,  VAX-11/782, byl asymetrický. (Pouze první procesor měl přístup k I/O zařízením [9] .)

Univac 1108-II

Do počítače Univac 1108-II a jeho následných variant bylo možné osadit až tři procesory [10] [11] . Na těchto počítačích běžel operační systém UNIVAC EXEC 8, ale z dostupné dokumentace není zřejmé, do jaké míry operační systém podporoval asymetrický nebo symetrický multiprocessing.

IBM System/370 model 168

Přidání druhého procesoru k IBM System/370 model 168 bylo nabízeno dvěma způsoby [12] . První se nabízel v podobě speciálního modulu IBM 3062 Attached Processing Unit , ve kterém procesor neměl přístup k I/O kanálům a fungoval tedy podobně jako „Procesor B“ v počítači Burroughs B5000, popř. jako druhý procesor v DEC VAX-11/782. Ve druhé možnosti se mělo zapojit plnohodnotný procesor, který byl podobný 65MP modelu z předchozí řady System / 360 .

Compaq System Pro

V listopadu 1989 společnost Compaq oznámila uvedení prvního multiprocesorového serveru Compaq SystemPro x86 se dvěma 33 MHz procesory Intel 80386 [13] . Pozdější modely byly vydány s procesorem Intel 80486, když vstoupil na trh. Compaq SystemPro byl asymetrický víceprocesorový systém - druhý procesor byl instalován na rozšiřující desce kromě standardního a spouštěl pouze uživatelské programy, zatímco první procesor obsluhoval přerušení, systémová volání a zaváděl operační systém. To umožnilo používat různé procesory v jednom systému, například přidat Intel 486 k prvnímu Intel 386 na rozšiřující desce a naopak.

V té době pouze operační systémy Novell NetWare , Microsoft LAN Manager a SCO UNIX/386 [14] podporovaly multiprocesing na architektuře x86 .

Ze všech modelů v řadě SystemPro byl pouze pozdější model, SystemPro XL, nabízen se standardní schopností symetrického víceprocesoru, dokud nebyl na podzim roku 1993 nahrazen řadou SMP serverů Compaq ProLiant .

Viz také

Poznámky

  1. Rané počítače ve Stanfordu: počítač se dvěma procesory v laboratoři AI . Získáno 11. října 2013. Archivováno z originálu 13. srpna 2014.
  2. 1 2 Provozní charakteristiky procesorů pro Burroughs B5000 . Burroughs. Získáno 11. října 2013. Archivováno z originálu dne 24. září 2019.
  3. Popisný popis B5500 MCP, strany 29 (spuštění rutiny) a 40 (poznámka k paralelnímu zpracování) . Získáno 11. října 2013. Archivováno z originálu 7. září 2012.
  4. ŘÍDÍCÍ DATA 6400/6500/6600 Referenční příručka POČÍTAČOVÝCH SYSTÉMŮ Archivováno 2. ledna 2014.
  5. Úvod do softwaru DECsystem-10, sekce 1.4 (DECsystem-10 Multiprocessing) . Získáno 11. října 2013. Archivováno z originálu 19. března 2012.
  6. Technické shrnutí DECsystem-10 strana 2-1 . Získáno 11. října 2013. Archivováno z originálu 7. září 2012.
  7. (PDP-11) Víceprocesorové FAQ .  (nedostupný odkaz)
  8. 12 Multiprocesing RSX -11M . Digital Equipment Corporation. Získáno 11. října 2013. Archivováno z originálu 7. září 2012.
  9. VAX Product Sales Guide, strany 1-23 a 1-24 Archivováno 16. června 2012 na Wayback Machine : VAX-11/782 je popsán jako asymetrický multiprocessingový systém v roce 1982
  10. Oznámení Univac 1108-II . Sperry Rand. Získáno 11. října 2013. Archivováno z originálu dne 27. září 2011.
  11. Historie počítačů a operačních systémů Univac (downlink) . Získáno 11. října 2013. Archivováno z originálu 2. srpna 2014. 
  12. IBM. Funkční charakteristiky IBM System/370 Model 168 (leden 1976). Získáno 11. října 2013. Archivováno z originálu 12. srpna 2012.
  13. InfoWorld 13. listopadu 1989 . Získáno 29. října 2017. Archivováno z originálu 18. října 2013.
  14. Svět sítě 13. listopadu 1989 . Získáno 29. října 2017. Archivováno z originálu 17. října 2013.