miércoles, 11 de mayo de 2016

PROCESADOR VECTORIAL

La gran mayoría de las CPUs de hoy en día son escalares o superescalares. Los procesadores vectoriales son muy comunes en el área de la computación científica, formando la base de la mayor parte de los supercomputadores durante los años 80 y 90. Sin embargo, parece claro que la mejora de la tecnología y de los diseños de procesadores van a acabar con el uso de procesadores vectoriales como procesadores de propósito general. IBMToshiba y Sony han anunciado el procesador Cell, que está formado en parte por procesadores vectoriales.
Casi todas las CPUs de hoy en día incluyen algunas instrucciones de procesamiento de tipo vectorial, conocidas como SIMD. En particular, las consolas de videojuegos y las tarjetas gráficas hacen un uso intensivo de este tipo de procesamiento.
Los procesadores vectoriales proporcionan operaciones de alto nivel que trabajan sobre vectores.
Una máquina vectorial consta de una unidad escalar segmentada y una unidad vectorial. La unidad vectorial dispone de M registros vectoriales de N elementos y de unidades funcionales vectoriales (de suma/resta, multiplicación, división, de carga/almacenamiento, etc) que trabajan sobre los registros vectoriales, y un conjunto de registros escalares.
Dispone de un conjunto de instrucciones vectoriales. Por ejemplo addv v1,v2,v3.
Una operación vectorial equivale a un bucle completo que procesaría los N elementos del registro vectorial.


  1. Es una secuencia de datos escalares del mismo tipo almacenados en memoria, normalmente en posiciones contiguas, aunque no siempre.  Proceso en paralelo: Es lo que hace su cerebro cuando escucha la radio al mismo tiempo que conduce el automóvil y bebe de una lata. Si se aplica a la programación, permite realizar los cálculos más complejos en mucho menos tiempo.
  2. 4. PROCESO EN PARALELO TECNICAS Existen tres técnicas básicas de proceso en paralelo:  SIMD (Single Instruction Multiple Data): Consiste en aplicar la misma instrucción a muchos datos de forma paralela. Fue utilizada en los primeros superordenadores. Ahora está disponible en chips de altas prestaciones, que permiten realizar funciones de modelado gráfico tridimensional en tiempo real. La tendencia es a su utilización como coprocesadores gráficos avanzados en arquitecturas de ordenadores personales o estaciones de trabajo.
  3. 5. PROCESO EN PARALELO TECNICAS…  MIMD (Multiple Instruction Multiple Data): Se aplican distintas instrucciones a distintos datos de forma simultánea. Supone la comunicación y coordinación entre distintos procesadores escalables. Es una puerta abierta principalmente por las tecnologías RISC que previsiblemente seguirá creciendo en los próximos años.
  4. 6. PROCESO EN PARALELO TECNICAS…  Neurocomputación: Proceso masivo en paralelo mediante redes neuronales artificiales. Permiten resolver problemas de forma adaptativa y no algorítmica. Adecuado para la resolución de problemas no estructurados: reconocimiento de voz, de patrones, corrección de errores, etc. Comienzan a aparecer neurocomputadores con coprocesadores asociados a ordenadores personales y estaciones de trabajo. También comienzan a estar disponibles lenguajes de alto nivel para la reconfiguración y redefinición de las redes neuronales.
  5. 7. HISTORIA Muchos algoritmos numéricos permiten que aquellas partes que consumen la mayor parte del tiempo del procesador sean expresadas como operaciones vectoriales. Esto se aplica especialmente a casi todos los algoritmos del álgebra lineal. Es por eso que una buena estrategia para mejorar el rendimiento de procesadores utilizados para el procesamiento de datos numéricos es proporcionar un conjunto de instrucciones y su hardware asociado diseñados específicamente para operaciones vectoriales. Esta idea se materializó en arquitecturas vectoriales compuestas por instrucciones vectoriales específicas, que permiten la suma, multiplicación y división de vectores componente a componente y la multiplicación de los componentes de un vector por un escalar.
  6. 8. HISTORIA… La primera computadora vectorial de éxito fue la Cray-1S, introducida en 1975. Tenía un reloj de 80- MHz (12.5 ns) y contaba con pipelining para producir una operación de punto flotante cada ciclo (80 MFLOPS). El competidor más cercano, el procesador Intel 8008 (1972) con un reloj de 108 KHz era capaz de realizar 100 FLOPS (en un buen día con viento a favor). Aún ahora las computadoras vectoriales aún poseen los procesadores y sistema de interconexión de memoria más rápidos. En los 70s y 80s los procesadores vectoriales eran la única arquitectura con el mejor rendimiento
  7. 9. PROCESADOR VECTORIAL (vector processor o array processor) Definición Es un diseño de CPU capaz de ejecutar operaciones matemáticas sobre múltiples datos de forma simultánea, en contraste con los procesadores escalares, capaces de manejar sólo un dato cada vez. La gran mayoría de las CPUs de hoy en día son escalares o superescalares.









No hay comentarios:

Publicar un comentario