Tipos de supercomputadoras
Existen dos tipos principales de supercomputadores: máquinas de vectores y máquinas paralelas. Las dos trabajan RAPIDO, pero en forma diferente.
Digamos que tu tienes 100 problemas de matemáticas. Si tu fueras un computador de vectores, te sentarías y harías todos los problemas tu mismo tan rápido como pudieras.
Para trabajar como un computadorparalelo, tu tendrías que conseguir y compartir el trabajo con sus amigos. Con 10 amigos, tu harías solo 10 problemas. Si fueran 20 amigos, cada uno solo tendría que hacer 5 problemas.
A pesar de que tu fueras muy bueno en matemáticas, te tomaría mas tiempo en hacer todos los 100 problemas que a las 20 personas trabajando juntas.
Procesamiento Vectorial
El procesamiento vectorial requiereespecíficamente instrucciones con vectores en lenguaje de máquina. El procesamiento requiere hardware canalizado, pero no viceversa. Una instrucción vectorial indica la operación que se va a realizar y especifica la lista de operandos (denominada vector) sobre los que operará. Cuando se ejecuta una instrucción vectorial, se alimentan los elementos del vector a la canalización apropiada uno a la vez,retrasados por el tiempo que toma completar una etapa.
Ejecución De Instrucciones En Paralelo
Desde lo albores de la computación, los diseñadores han tratado de hacer máquinas más rápidas. Hasta cierto punto, esto se podría lograr haciendo más veloz el hardware; sin embargo, empiezan a aparecer en el horizonte diversos límites físicos. Por un lado, las leyes de la física señalan que nada puedeviajar más rápido que la velocidad de la luz, que es de alrededor de 30cm, por nanosegundo en el vacío y de 20 cm por nanosegundo a través de alambre de cobre.
Esto significa que para construir una computadora con un tiempo de instrucción de 1 nanosegundo, la distancia total que las señalas eléctricas tuvieran que viajar entre la memoria, el CPU y de regreso, no debe exceder de 20 centímetros. Deahí que las computadoras demasiado rápidas tengan que ser muy pequeñas.
Desgraciadamente, las computadoras rápidas producen más calor que las lentas, y el construirlas en un volumen reducido hace difícil disipar dicho calor. En ocasiones, las supercomputadoras se sumergen en freón líquido, un refrigerante, a fin de eliminar el calor tan pronto como sea posible. Con todo, hacer más y más rápidasa las computadoras es cada día más y más difícil, así como muy caro.
No obstante, es posible lograrlo de otra manera: en lugar de un solo CPU de alta velocidad, se puede construir una máquina con varias ALU más lentas (y más baratas), o hasta CPU completas, para obtener el mismo poder de cómputo a un costo más bajo. Muchas investigaciones se han dedicado a construir este tipo de máquinasparalelas.
Las máquinas paralelas pueden dividirse en tres categorías (Flynn, 1972), basadas en el número de instrucciones y de datos que pueden procesar:
* SISD: Corriente de instrucciones sencilla. Corriente de datos sencilla.
* SIMD: Corriente de instrucciones sencilla. Corriente de datos múltiple.
* MIMD: Corriente de instrucciones múltiple. Corriente de datos múltiples.
Por ejemplo, laCDC 6600 y algunas de sus sucesoras tienen unidades funcionales múltiples (ALU especializadas), cada una de las cuales puede realizar una operación sencilla a alta velocidad, según se ilustra en la figura 1. En este ejemplo, se tienen cinco unidades funcionales, dos de ellas para la suma y las tres restantes para las operaciones de resta, multiplicación y división.
La idea que sustenta estediseño es que la unidad de control extrae un instrucción y la dirige a una de las unidades funcionales para su ejecución; mientras tanto, la unidad de control extrae la siguiente instrucción y la envía a otra unidad funcional. Este proceso continúa hasta que no se puede avanzar más, ya sea porque todas las unidades del tipo requerido están ocupadas, o bien porque se necesita un operando que todavía...
Regístrate para leer el documento completo.