¿Qué limitaciones funcionales tienen las redes punto a punto en comparación con las supercomputadoras?

  1. Red . Los nodos individuales en las supercomputadoras están conectados por redes de alto ancho de banda y baja latencia como InfiniBand. Pueden alcanzar velocidades de transferencia de 10–100 Gb / sy latencia de nivel de microsegundos. Incluso en los países mejor desarrollados, las redes residenciales solo pueden alcanzar velocidades de transferencia de 1 Gb / sy latencia de milisegundos. Y esto está lejos de ser universal. La mayoría de las personas solo tienen acceso a redes de 100Mb / s, o incluso menos (velocidad promedio de banda ancha en todo el mundo). En el papel, esta es una diferencia de 1000x para el ancho de banda y la latencia, pero puede ser mucho peor que 1000x en la práctica, dependiendo de cómo su programa use la red.
  2. Hardware A pesar de los enormes avances en el hardware del consumidor, la computadora promedio para el consumidor sigue siendo mucho menos potente que un nodo de supercomputadora contemporáneo. Además, las personas rara vez usan su computadora únicamente para ejecutar su aplicación, por lo que solo obtiene una fracción del rendimiento de la computadora.
  3. Diversidad de la arquitectura . Todos los nodos informáticos en una supercomputadora suelen tener exactamente la misma arquitectura. Cada nodo tiene el mismo hardware, mismo sistema operativo, mismo software, etc. Los nodos de almacenamiento están separados de los nodos de cómputo y se conectan a través de una red de alta velocidad. De esta manera, una vez que tenga una aplicación que se puede ejecutar en un solo nodo, puede escalarla fácilmente para que se ejecute en todos los nodos. Sin embargo, si desea hacer algo con los pares, hay muchas más cosas de las que preocuparse. Las personas pueden tener computadoras muy diferentes. Alguien puede tener un SLI / Crossfire de 4 vías, mientras que otra persona no tiene una GPU en absoluto. Puede ver CPU que van desde Pentium 4 a 6ta generación Core i7, o incluso arquitecturas que no son x86. Las personas también pueden ejecutar diferentes sistemas operativos en sus computadoras. Windows, Mac, Linux, lo que sea. Deberá desarrollar una versión separada para cada configuración o tener un programa enorme que funcione con cada configuración. De cualquier manera, tienes mucho más trabajo por hacer. Escalar una aplicación a una red peer-to-peer es mucho más difícil que escalarla a una supercomputadora.

No es difícil obtener suficientes procesadores en una red punto a punto con la misma potencia de procesamiento equivalente a una supercomputadora. Bueno … Tal vez puedas conseguir que 10 mil personas se registren, pero para que esta computadora peer-to-peer resuelva un gran problema con una eficiencia similar, todos esos 10 mil procesadores deben estar disponibles al mismo tiempo. Y nadie puede reiniciar o comenzar a jugar WoW o algo así …

La gran limitación es la red. Esto tiene dos partes: una supercomputadora tiene un ancho de banda punto a punto del orden de un par de Gigabytes / seg. Su conexión a internet es una fracción de eso. La otra parte es la latencia: con un poco de suerte, puede obtener 1/100 de una segunda latencia entre dos máquinas en Internet. Eso es aproximadamente 1000 veces peor que en una supercomputadora. Y muchas simulaciones físicas están determinadas principalmente por la latencia, y menos por el ancho de banda, y menos por la potencia de procesamiento.

Entonces, tiene al menos tres razones por las cuales las redes punto a punto no harán el trabajo.

La latencia de igual a igual se mide en milisegundos. Las interconexiones de la supercomputadora tienen una latencia de microsegundos de un solo dígito. Los códigos de física masivamente paralelos están ligados a la latencia.

Entonces, si desea ralentizar su rendimiento en un factor de 1000x, ejecute su código de física en una red punto a punto.