Creo que se esta moviendo rapidamente y lo gracioso es que esta volviendo a pasar lo mismo de siempre: de la ciencia basica a la industria, el paralelismo se viene trabajando en Ciencia desde hace mas de 30 años.
Por eso, afortunadamente ya existe toda la infraestructura de software para trabajar con multiples procesadores: el llamado estandar MPI o pases de mensaje. Que no es mas que una forma de comunicar procesos a travez de diferentes estructuras logicas. Pero eso ya no importa, porque el MPI encapsula todo el andamiaje y tu solo lo usas. Bajo este esquema existen dos vertientes, el paralelismo explicito y la distribucion automatica. En el paralelismo explicito el MPI te brinda funciones muy faciles de usar para coordinar procesos y utilizar el procesador que tu quieras cuando tu lo desees. Creeme, es facinante poder diseñar codigos que ya no residen en un solo proceso y que realmente estan usando cada uno su propio hardware. Estas herramientas estan muy avanzadas desde hace muchos años en C, C++ y Fortran tanto 77 como 90. Recientemente Java a estado creando su estandar MPI y hace unos pocos dias en un congreso mostraron el estandar MPI para IDL, un lenguaje que increiblemente no tenia estandar para programacion en paralelo. En la distribucion automatica tu creas tu codigo y un compilador puede tratar de paralelizar tu codigo, aunque muchos dicen que es muy ineficiente, yo nunca lo uso. Por ultimo, creo que el futuro de las PCs estara en el numero de procesadores que vendran en la maquina. Al ritmo que se desarrolla creo que en menos de 50 años venderan equipos con 1024 procesadores a precios muy accesibles. Asi que creo que cualquier programador con vision, deberia de estar interesado en aprender el MPI. Algunas implementaciones del estandar MPI: http://www-unix.mcs.anl.gov/mpi/mpich1/ http://www.open-mpi.org/ Estas distribuciones estan pensadas en los clusters, pero se pueden usar con una maquina con varios procesadores. El MPICH al momento de compilar tu le puedes pasar una bandera que configura el tipo de "coordinador" de mensajes, en la documentacion viene la bandera explicita para usar el MPI en UNA sola maquina con MULTIPLES procesadores. Para que no tengamos que estar cargando el servidor del cluster en la memoria. Asi venimos trabajando con maquinas quadro de intel y Athlons X2 de AMD desde el año pasado. Pues pensamos: ¿Para que tenemos una maquina con 4 procesadores si solo usamos uno? jejeje. Por ultimo, paralelizar un codigo no es tan dificil, solo es cuestion de darle un rato al paradigma de programacion en paralelo (cliente-servidor, autoasignacion de tareas, etc) y es muy rapido, cuando llegue el momento, creo que sera relativamente sencillo cambiarnos al nuevo paradigma. Eso si, esto no garantiza la eficiencia, eso creo que tardara algunos años. Atte Victor De la Luz IGEOFCU/UNAM On Dec 27, 2007 9:34 AM, Miguel Da Silva - Centro de Matemática <[EMAIL PROTECTED]> wrote: > Sigue una nota que me transmitió un compañero de trabajo. > > Desde el punto de vista académico es algo muy lindo, sin embargo se me > apareció una poregunta... ¿como se está preparada la comunidad del > Código Abierto? > > http://www.nytimes.com/2007/12/17/technology/17chip.html?_r=2&th=&adxnnl=1&oref=slogin&emc=th&adxnnlx=1197896596-6ahmrtd1OERgdl8MTmUI/w&oref=slogin > > Saludos. > -- > Miguel Da Silva > Administrador de Red > Centro de Matemática - http://www.cmat.edu.uy > Facultad de Ciencias - http://www.fcien.edu.uy > Universidad de la República - http://www.rau.edu.uy > > > -- > To UNSUBSCRIBE, email to [EMAIL PROTECTED] > with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED] > > -- Atte ItZtLi ¤º°°º¤ø,¸¸,ø¤º°°º¤ø,¸¸,ø¤º°`°º¤ø,¸ Nahui Tonalli Icniuhtli. ¤º°°º¤ø,¸¸,ø¤º°°º¤ø,¸¸,ø¤º°`°º¤ø,¸