Comutatoare

Exista mai multe tipuri de comutatoare ierarhice si neierarhice:

  • Switch poarta: Sp
  • Comutatoar duplex: Sduplex=(1a, nb, c=1, n Sp)
  • Comutator crosspoint: Scp=(ma, nb, c=1, (m+n) Sp)
  • Comutator crossbar: Scb=(ma, nb, c=min(m,n), m*n Sp)
  • Switch trunchi K: Stk=(ma, nb, c=k, (m+n)*kSp)
  • Switch crossbar neierarhic: Scbn=(ma, c=m/2, m*(m-1)/2 Sp)
  • Switch trunchi K neierarhic: Stkn=(ma, c=min(m/2,k), m*k Sp)

Cel mai simplu tip de comutator, care este folosit pentru a conecta 2 resurse de acelasi tip, sau tipuri diferite, este comutatorul de tip poarta: Sp . Deoarece acest comutator ofera o singura conexiune, se spune ca are concurenta 1.
Comutator de tip poarta

In continuare, pentru urmatoarele comutatoare, capacitatea de a conecta un set de resurse cu alt set de resurse se numeste concurenta si se masoara ca multiplu de concurenta realizata pentru Sp (adica 1). Complexitatea unui alt comutator se masoara in numarul de Sp-uri necesare pentru a simula functionalitatea acestuia, deoarece Sp este comutatorul de baza.

Comutatorul duplex permite conectarea unei resurse de tip a cu mai multe resurse de tip b, existand la un moment dat o singura conexiune. Astfel, caracteristicile acestui comutator sunt: Sduplex=(1a, nb, c=1, nSp).
Comutator de tip duplex

Comutatorul de tip crosspoint permite conectarea a n resurse de tip a cu m resurse de tip b . Un exemplu in acest sens este o magistrala care are pe de o parte niste unitati de prelucrare de date si pe de alta parte niste memorii. Deoarece exista un singur mediu de comunicare, valorile caracteristice sunt: Scp=(ma, nb, c=1, (m+n)Sp), deci concurenta este 1.
Comutator de tip crosspoint

Switch-ul crossbar permite conectarea in acelasi timp a mai multor resurse de tip a cu mai multe resurse de tip b, prin comutarea Sp-urilor astfel incat la un moment dat o resursa de tip a sau b nu este conectata la mai multe resurse de tip b, respectiv a. Caracteristicile sunt: Scb=(ma, nb, c=min(m,n), m*nSp). Aceasta este cea mai “scumpa” implementare de comutator, deoarece necesita m*n comutatoare de baza (Sp). Despre utilizarea unui switch de tip crosssbar intr-o arhitectura multiprocesor puteti citi aici Comutator de tip crossbar

O varianta mai ieftina din punctul de vedere al numarului de comutatoare de baza cu care se poate echivala, este comutatorul de tip trunchi k, care este mai des intalnit in practica ca cel anterior. Acesta conecteaza mai multe resurse de un tip cu mai multe resurse de alt tip, numarul de conexiuni posibile la un anumit moment fiind dat de numarul de linii interne ale comutatorului (k). Caracteristicile sunt: Stk=(ma, nb, c=k, (m+n)*kSp).
Comutator de tip trunchi K

Comutatoarele neierarhice permit conectarea oricarei resurse cu oricare alta in limita liniilor disponibile de catre comutator.

Utilizarea unui Switch de tip Crossbar intr-o Arhitectura Multiprocesor

O solutie pentru a imbunatati performantele unui sistem de calcul poate consta in adaugarea mai multor procesoare. In cazul unei arhitecturi de sistem elaborata cu atentie, se poate opta pentru a maximiza cantitatea de resurse disponibile pentru fiecare procesor si, in acelasi timp, pentru minimizarea numarului de conflicte dintre procesoare pentru accesul la resurse. Arhitectura sistemului este factorul principal care determina un castig de performanta in cazul adaugarii mai multor procesoare.

Magistralele constituie un concept simplu si nu necesita un efort deosebit pentru implementare. Ideea de baza consta in conectarea mai multor procesoare, folosind o aceeasi cale electrica, pentru a avea acces la o anumita resursa, de exemplu memoria principala. Numarul de procesoare ce pot fi conectate la o magistrala este insa marginit de catre limitele magistralei. Fiecare procesor trebuie sa foloseasca mai ales cache-ul local pentru a evita inundarea cu trafic a magistralei.

Pentru un acces optim la resursele sistemului, se folosesc multiple cai paralele catre acestea. Fiecare procesor poate comunica cu un switch la viteze mari de transfer. Procesoarele trebuie sa negocieze accesul doar in cazul in care concureaza la o aceeasi resursa. Un switch crossbar poate reduce timpii pentru accesul la magistrala si deci poate asigura o metoda pentru dezvoltarea de masini vectoriale performante.

Pentru un server care foloseste o magistrala partajata, exista, in mod evident, o limitare in a adauga noi procesoare. Fiecare procesor trebuie sa “negocieze” o banda de acces limitata, degradand performantele globale ale sistemului. Magistrala devine o resursa pentru care procesoarele trebuie sa concureze.

In cazul utilizarii unui switch de tip crossbar pentru conectarea procesoarelor la resursele existente (memorii, dispozitive I/O, etc.), fiecare procesor are o rata de transfer asigurata de catre switch, permitandu-i-se un acces independent la magistrala. Procesoarele interactioneaza doar in cazul in care acceseaza o aceeasi resursa diferita de magistrala. Introducerea switch-ului contribuie la imbunatatirea performantei intregului sistem si la cresterea scalabilitatii acestuia.

In partea dreapta a figurii se poate observa modul in care magistrala realizeaza o “strangulare” a traficului dintre procesoare si resursele partajate de acestea. Switch-ul crossbar introdus in arhitectura sistemului (partea stanga a figurii) garanteaza o rata de transfer intre un procesor si o alta resursa la care acesta se poate conecta. Conflictele apar in acest caz doar in cazul in care mai multe procesoare solicita accesul la o aceeasi resursa, fiind excluse conflictele generate de partajarea caii de comunicatie.
Exemplu switch crossbar

asc/extra/comutatoare.txt · Last modified: 2015/03/02 14:46 by dan.dragomir
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0