miércoles, 24 de octubre de 2012

Maquina Virtual Paralela

¿Que es PVM?

        PVM consiste en un software y un conjunto de librerias, que permiten establecer una colección de uno o mas sistemas de computación, con el fín de poder integrar dichos sistemas en un esquema de una sola máquina virtual (PVM: Paralel Virtual Machine - Máquina virtual en paralelo).
        PVM opera sobre diferentes plataformas de UNIX y también de Windows 9x, la cantidad de plataformas en las que puede correr el ambiente de PVM es muy variada y abundante. PVM puede establecerse en cualquier esquema de red heterogénea, sobre todo en el ambiente de Internet, como se puede apreciar en la gráfica anterior.
        PVM brinda rutinas en lenguajes C y en Fortran para procesos como paso de mensajes asíncronamente y para control de procesos; además de ofrecer un paralelismo escalable, entre otras muchas ventajas que ofrece.
        A pesar de que PVM no es un estándar, es sumamente popular para realizar y desarrollar aplicaciones científicas complejas que requieren un esquema de programación en paralelo, dada su compatibilidad en sistemas operativos es sumamente portable y fácil de instalar, además de que PVM consiste en un esquema pequeño de código de computadora.

Ventajas y desventajas de PVM

        A continuación listaremos las ventajas y desventajas de PVM. Cabe aclarar que la siguiente lista de ventajas y desventajas listadas se refieren exclusivamente a la versión de PVM 3.0, para plataformas UNIX exclusivamente.

VENTAJAS
  • Portabilidad.- Es probablemente la librería de paso de mensajes más portable que existe.
Estaciones de trabajo.
Computadoras en paralelo.

Sun3
SPARCstation
MicroVax
DECstation
DEC Alpha
IBM RS/6000
NEXT
Silicon Graphics IRIS 
HP 9000
DG Aviion
386/486 Linux boxes
IBM RT
386/486 BSD386 boxes    

Intel Paragon
    Thinking Machines CM5
Sequent Symmetry
Intel iPSC/860
    Thinking Machines CM2
Alliant FX/8
Encore 8800
MIPS 4680
Cray YMP and C90
Fujitsu VP2000
Convex
IBM 3090
KSR-1
IBM-SP1
  • Paralelismo Escalable.- PVM permite definir cuantos procesadores puede utilizar una aplicación, en caso de que falten procesadores, PVM realiza el trabajo en menos procesadores, recurriendo a técnicas de procesamiento concurrente.
  • Tolerancia A Fallas A Partir De Añadir O Borrar Procesos Anfitriones (Host).
  • Fácil De Instalar Y De Usar.
  • Popular.- Es una de las librerias de paso de mensajes más faciles y óptimas.
  • Flexible.
    • Esquema fácil de modificar y de configurar/definir por la máquina virtual.
    • Control arbitrario de dependencia de estructuras. La aplicación decide:
      • Donde y cuando producir o terminar las tareas.
      • Cuales máquinas se agregan o se remueven desde la máquina virtual en paralelo.
      • Cuales tareas se pueden comunicar y/o sincronizar con otras.

  • Puede incorporar casi cualquier computadora que funcione bajo UNIX, (Obviamente con cuenta de acceso), para incorporarla fácilmente al esquema de la máquina virtual.


DESVENTAJAS
  • Desempeño.- Como PVM es un esquema heterogéneo de computadoras, dependiendo de la capacidad de procesamiento de las computadoras vinculadas al esquema de la máquina virtual, su desarrollo puede verse mermado o incrementado, según sea el poder de cómputo de las computadoras anfitrionas.
  • Cuenta con un esquema no estándarizado.- PVM no es un estándar (como lo es MPI).
  • Es algo deficiente en cuanto al paso de mensajes se refiere
·         La versión más actual de PVM es la 3.4.3, liberada el 29 de marzo del 2000.
·         La página en internet de PVM, mantenida por el Oak Ridge National Labs, se encuentra en http://www.epm.ornl.gov/pvm/. Aquí se puede encontrar documentación, información miscelánea, y un enlace a la distribución de PVM en código fuente, que se encuentra en http://www.netlib.org/pvm3/pvm3.4.3.tgz.
·         El paquete RPM utilizado en esta instalación se obtuvo en:
ftp://ftp.rpmfind.net/linux/redhat/6.2/en/os/i386/RedHat/RPMS/pvm-3.4.3-4.i386.rpm.
·         La instalación se realiza con el siguiente comando, en modo superusuario:
·         # rpm -Uvh pvm-3.4.3-4.i386.rpm
·         Este paquete está creado de manera que la instalación se realiza bajo el directorio /usr/share/pvm3. Ya que esto queda bajo el directorio compartido /usr, no se requiere configuración adicional para que todos los nodos puedan utilizar PVM.
Ejemplo:

Algoritmo Paralelo

Topología usada

La topología usada fue la maestro-esclavo, como se muestra en la figura.




Tecnología Tri-gate


Tri-gate es el nombre que la propia Intel le ha dado a la nueva estructura de sus transistores, y que se verá implantada a partir de la próxima generación de chips Ivy Bridge que se prevé llegarán al mercado a finales del actual año. Las mejoras que traen los Tri-gate son muy notables, empezando por un menor consumo que repercutirá en un montón de factores.

Tri-Gate, los transistores 3D de Intel
Intel ha estado investigando este nuevo desarrollo desde 2002, y han tenido que pasar nueve años – casi diez – para que la invención llegue al mercado. La idea tras Tri-Gate es que la estructura de los transistores pasa de ser plana (bidimensional) a tener una nueva dimensión, la altura. La diferencia – explicada muy a groso modo – viene a ser la misma entre un cuadrado y un cubo.

Con esta estructura tridimensional se consigue la creación de un nuevo estado de funcionamiento que permitirá minimizar el consumo energético cuando sea necesario, es decir, cuando la CPU no tenga tareas que realizar. Así se logra optimizar el ratio rendimiento/energía que tan importante se está haciendo en los últimos años.
Relación de la tecnología Tri-gate con el paralelismo
Una computadora que ejecuta procesos en paralelo cuenta con varios de sus componentes internos repetidos, de esta forma puede ejecutar varias instrucciones al mismo tiempo.
Las arquitecturas SIMD son esenciales en el mundo de las computadoras paralelas, debido a su habilidad para manejar grandes vectores y matrices de datos en tiempos muy cortos. El secreto detrás de este tipo de arquitectura es que cuentan con varios procesadores ejecutando la misma operación sobre un conjunto de datos.

Ley de Moore


La ley de Moore expresa que aproximadamente cada dos años se duplica el número de transistores en un circuito integrado. Se trata de una ley empírica, formulada por el cofundador de Intel, Gordon E. Moore, el 19 de abril de 1965, cuyo cumplimiento se ha podido constatar hasta hoy.
En 1965, Gordon Moore afirmó que la tecnología tenía futuro, que el número de transistores por unidad de superficie en circuitos integrados se duplicaba cada año y que la tendencia continuaría durante las siguientes dos décadas.
Relación del paralelismo con la ley de Moore.
Ley de Moore: El número de transistores que pueden integrarse en un dispositivo con un coste determinado se dobla cada 18 meses
– Reducción del tamaño aumento de la frecuencia
Consumo y calor disipado proporcional a f3
 

Mejoras en la arquitectura:
• Cachés más grandes
• Más paralelismo a nivel de instrucción
A mayor tamaño, mayor coste económico y menor velocidad
La señal de reloj debe llegar “a tiempo” a todo el procesador
No hay más paralelismo a ese nivel.