¿Necesita una máquina que pueda realizar billones de cálculos de punto flotante en un segundo? ¿O necesitas una historia interesante sobre tu supercomputadora personal que apagó las luces en tu aldea? Construir una supercomputadora es un desafío interesante si eres un genio adinerado con algo de tiempo libre. Técnicamente, una supercomputadora multiprocesador es una red de computadoras que trabajan juntas para resolver un problema. Este artículo discutirá brevemente cada etapa de su creación, enfocándose en hardware y software.
Paso
Paso 1. Primero, averigüe qué componentes de hardware necesitará
Un nodo principal, al menos una docena de nodos informáticos idénticos, un conmutador Ethernet, una unidad de distribución de energía (PDU) y un bastidor de servidor. Infórmese también sobre las necesidades de electricidad, refrigeración y espacio. Especifique la dirección IP de la red privada, los nombres de los nodos, los paquetes de software que desea instalar y la tecnología que desea utilizar para que todos funcionen juntos para realizar computación en paralelo (más sobre eso a continuación).
- Aunque el hardware que necesitará es caro, el software de esta guía es totalmente gratuito y la mayor parte es de código abierto.
- Si desea ver qué tan rápido será su superordenador (en teoría), use esto:
Paso 2. Cree nodos de cálculo
Puede ensamblar los nodos de cómputo que necesita usted mismo o usar un servidor listo para usar.
- Elija una estructura de servidor de computadora que maximice el espacio, la refrigeración y la eficiencia energética.
- O puede utilizar aproximadamente una docena de servidores obsoletos. Cuando se usan juntos, son mucho más útiles que cuando se usan individualmente, y puede ahorrar bastante. Todos los procesadores, adaptadores de red y placas base deben ser iguales para garantizar que el sistema funcione sin problemas. Por supuesto, no olvide la RAM y la capacidad de almacenamiento para cada nodo y al menos una unidad óptica para el nodo principal.
Paso 3. Monte el servidor que ha integrado en el bastidor de servidores
Empiece por la parte inferior para evitar las objeciones en la parte superior. Invite a un amigo para que lo ayude, ya que los juegos de servidores congestionados pueden volverse tan pesados que dificulta colocarlos en los cajones.
Paso 4. Monte el conmutador Ethernet en la parte superior del marco del servidor
Aproveche esta oportunidad para configurarlo: asigne un tamaño de trama de 9000 bytes, establezca la dirección IP en la dirección estática que especificó en el paso 1 y desactive los protocolos de enrutamiento innecesarios como SMTP Snooping.
Paso 5. Instale la unidad de distribución de energía
Es posible que necesite 220 voltios para la computación de alto rendimiento, dependiendo de la cantidad de corriente que requiera el nodo a la carga máxima.
Paso 6. Una vez que todo esté instalado, puede iniciar el proceso de configuración
Linux es un sistema operativo imprescindible para clústeres informáticos de alto rendimiento, porque además de ser ideal para la informática científica, también es 100% gratuito. Con nodos que alcanzan cientos o incluso miles, ¡definitivamente será muy costoso si usa Windows!
- Comience instalando la última versión del BIOS y el firmware de la placa base. La versión instalada debe ser la misma para todos los nodos. Comience instalando la última versión del BIOS y el firmware de la placa base, que debería ser el mismo en todos los nodos.
- Instale la distribución de Linux que desee en cada nodo, con una interfaz gráfica en el nodo principal. Las opciones populares son CentOS, OpenSuse, Scientific Linux, RedHat y SLES.
- El autor recomienda encarecidamente utilizar la distribución de clúster de Rocks. Rocks instalará instantáneamente todos los programas que su supercomputadora necesita para funcionar y utilizará una forma ingeniosa de 'compartir' a sí mismo en todos los nodos existentes mediante el procedimiento de arranque PXE y 'Kick Start' de Red Hat.
Paso 7. Instale la interfaz de mensajería, la administración de recursos y otras bibliotecas de software esenciales
Si no instaló Rocks en el paso anterior, tendrá que preparar usted mismo el software necesario para alimentar el mecanismo de computación en paralelo.
- Primero, necesitará un sistema de administración de bash portátil como Torque Resource Manager, que compartirá el trabajo entre las máquinas.
- Empareje Torque con el Programador de Clúster de Maui para completar la configuración.
- A continuación, debe instalar la interfaz de mensajería, que es necesaria para que los nodos informáticos separados compartan los mismos datos. OpenMP es una opción definitiva.
- No olvide las bibliotecas y compiladores matemáticos de subprocesos múltiples para crear los programas informáticos en paralelo que necesita. O simplemente instale Rocks para hacerlo aún más fácil.
Paso 8. Combine todos los nodos de cómputo en una red
El nodo principal enviará tareas computacionales al nodo de cómputo, que luego debe enviar los resultados mientras intercambian mensajes entre sí. Cuanto antes mejor.
- Utilice una red Ethernet privada para conectar todos los nodos de su grupo de supercomputadoras.
- El nodo principal puede ser un servidor NFS, PXE, DHCP, TFTP y NTP en la red Ethernet.
- Debe separar esta red de la red pública para asegurarse de que los paquetes enviados no interfieran con otras redes en su red local.
Paso 9. Pruebe la supercomputadora que ha creado
Antes de que lo utilicen otros, le recomendamos que primero pruebe el rendimiento de su supercomputadora. HPL (High Performance Linpack) es un punto de referencia popular para medir la velocidad de cálculo de supercomputadoras. Deberá compilar desde el código fuente, con todas las opciones de optimización que ofrece el compilador que está utilizando para la arquitectura que ha elegido.
- Por supuesto, necesita compilar desde el código fuente con todas las opciones de optimización posibles para su plataforma. Por ejemplo, si usa una CPU AMD, compílela usando Open64 con el nivel de optimización -0fast.
- Compare los resultados de sus pruebas en TOP500.org para comparar su supercomputadora con las 500 supercomputadoras más rápidas del mundo.
Consejos
- Para velocidades de red altas, eche un vistazo a la interfaz de red InfiniBand. Por supuesto, debe estar preparado para pagar un precio superior.
- IPMI puede simplificar la administración de grandes grupos de supercomputadoras al proporcionar KVM sobre IP, control remoto del ciclo de energía y otras características.
- Utilice Ganglia para supervisar la carga informática en los nodos.