Párhuzamos feldolgozás

A párhuzamos feldolgozási lehetőségek javulását a harmadik generációs gépek részben azzal érték el, hogy több, nagy autonómiával rendelkező processzort használtak és a rendszeren belül rugalmas kommunikációt biztosítottak. Az ábra egy ilyen lehetséges megoldást mutat, amit a második generációs gépeknél már említett Borroughs B5000-es és ennek utódja, a B5500-as alkalmazott. Az operatív tárat nyolc, egymástól függetlenül elérhető modulra (M1…M8) bontották. Ezek egy memóriakapcsoló egységen keresztül kapcsolódtak két CPU-hoz és négy IOP-hoz. A memóriakapcsoló egy telefonközponthoz hasonlóan működött: mind a hat processzornak egyidejű hozzáférést biztosított az operatív tárhoz, feltéve, hogy különböző modulokat akartak elérni. Hasonló kapcsoló áramkörök kötötték össze az input-output processzorokat a maximum 32 perifériával. Ez a szervezés lehetővé tette, hogy ennél a gépnél egyidőben több tevékenység történjen.

A párhuzamosságot alacsonyabb szinten is megvalósították azzal, hogy egy CPU az egyes utasításokat átlapoltan olvasta be a memóriából vagy átlapoltan hajtotta végre azokat. Erre két módszer alakult ki:

  1. Egynél több azonos egységet építettek adott tevékenység, pl. az összeadás végrehajtására. Így egyidőben több összeadást lehetett végrehajtani. Ez a szervezés a tömbökkel végzett műveleteket gyorsította fel jelentősen.
  2. Pipeline szervezésű processzort építettek.

Az ábrán egy pipeline szervezésű lebegőpontos összeadó szerkezete látható. Az összeadást négy független, egymás után végrehajtandó lépésre bontották. Ezek mindegyikét egy-egy külön egység, egy úgynevezett szegmens hajtja végre. Az egyes szegmensek az általuk előállított köztes eredményeket a következő szegmensnek adják át. A szegmensek egymástól függetlenül, párhuzamosan működnek, így mindegyikük egy másik összeadás adott részét hajtja végre. Az egész pipeline így egy adott időpontban négy különböző összeadás végrehajtásán dolgozik, a feldolgozási képessége majdnem eléri a négy párhuzamosan működő, de nem pipeline szervezésű összeadó együttes sebességét.