Una supercomputadora debe tener dos propiedades:
- Puede manejar problemas más grandes que una computadora ordinaria
- El rendimiento puede escalar a medida que aumenta el presupuesto
Incluso algunas PC unidas tienen posiblemente esa primera propiedad. Sin embargo, la ampliación significaría permitir la interconexión de un número razonablemente grande de PC.
No es práctico tener más de cinco interfaces Ethernet en cada PC, por lo que la pregunta es “¿cuántas máquinas puede interconectar?” Bueno, si literalmente conecta cada PC a cualquier otra PC , tiene lo que llamamos una red directa o totalmente conectada … y las cinco interfaces por máquina significarían escalar a no más de seis PC:
- ¿Hay algún programa que pueda usar para 'engañar' a mi computadora para que piense que estoy conectado a través de una conexión Ethernet?
- ¿Qué representan los tres cables de colores en un cable Ethernet? ¿Usan los mismos colores a nivel mundial?
- ¿Por qué la mezcla de cables Ethernet terminados en T568A y T568B puede causar una degradación en la calidad de la señal?
- Cómo jugar en modo multijugador en counter strike source a través del cable ethernet
- Cómo conectar un iPad a un cable de Ethernet (para acceder a una transmisión de video doméstico) y a un proyector basado en HDMI al mismo tiempo
En febrero de 1994, cuando mi grupo de investigación construyó la primera supercomputadora de clúster de PC Linux del mundo, cuatro PC conectadas por Ethernet realmente calificaron como una supercomputadora paralela. Sin embargo, ha pasado mucho tiempo desde que cuatro (o incluso seis) PC se escalaron lo suficiente como para justificar llamar a un sistema una supercomputadora .
Por supuesto, hay otras topologías (patrones de cableado) que se pueden escalar usando solo unas pocas interfaces por PC y cables cruzados. Por ejemplo, una malla toroidal 1D , un anillo , puede escalar para conectar muchas máquinas:
El problema es que obtendrá un rendimiento pésimo porque se necesitan varios saltos para pasar de una máquina a la mayoría de las demás y el tráfico entre varios pares tendría que compartir muchas de las mismas rutas de cable. Técnicamente, tendría una alta latencia (demora para enviar un mensaje) y un ancho de banda de bisección bajo (ancho de banda entre pares de PC cuando todas las PC se comunican). Puede hacerlo mejor con una topología como una malla 2D :
El problema con estas topologías de solo cable cruzado es que el ancho de banda de latencia y bisección aún no es muy bueno a medida que escala a sistemas más grandes.
Por lo tanto, la respuesta moderna es usar interruptores para construir su topología de red. Un interruptor permite que todas las máquinas conectadas a él hablen simultáneamente con una latencia mínima y un ancho de banda de bisección alto. El gran número de puertos en un conmutador significa que se pueden construir topologías que pueden cubrir un número mucho mayor de PC con baja latencia y ancho de banda de bisección alto.
Son posibles muchas topologías de red de conmutador. Por ejemplo, aquí hay una pequeña Red de vecindad plana (FNN) que puede vincular ocho PC usando solo tres interfaces por PC y conmutadores con solo cuatro puertos cada uno:
El uso de este tipo de red con conmutadores Ethernet básicos (que comúnmente tienen 32 o más puertos cada uno) permite escalar al menos a cientos de PC y al mismo tiempo ofrece un ancho de banda de bisección muy alto y una latencia de solo un salto de conmutador entre cualquier par de PC. Otras topologías, como las redes de vecindad planas dispersas (SFNN) permiten escalar a miles de PC mientras mantienen un rendimiento de red similar. Por ejemplo, KASY0 fue la primera supercomputadora SFNN del mundo y utilizó conmutadores Ethernet de 24 puertos para construir una red de alto rendimiento que interconectaba 128 nodos de PC:
KASY0 era una máquina bastante grande cuando mi grupo de investigación la construyó en 2003. Las supercomputadoras más grandes ahora tienen literalmente millones de nodos … es por eso que conectar directamente seis PC ya no es realmente una supercomputación. 😉