como hacer que funcionen varios procesadores al mismo tiempo?

José Pablo Fonfría jpablo.fonfria en gmail.com
Mar Ene 19 20:20:33 GMT 2010


Hola Carolina.

Carolina Dougnac escribió:
> Hola a todos!!
> tengo un PC QuadCore con 4GB de ram.
> 
> En mi trabajo utilizamos un software matemático llamado MATLAB y otro 
> que es para hacer graficos llamado NCL, ambos están instalados en ubuntu 
> 9.10 de 32 (porque tiene mayor soporte).
> Resultó que yo pensaba que al tener este pc que es mucho más poderoso 
> que el anterior, debería procesar nuestros datos con mayor rapidez 
> (trabajamos con matrices multidimencionales: tiempo, lat, lon, n 
> variables, n niveles de altura, pronóstico)... pero no fue así, se tarda 
> lo mismo, y estoy hablando de varios días para procesar nuestras cosas.
> 
> ... en fin. Mientras hacía la hora, puse el monitor del sistema, y noté 
> que los procesadores no trabajaban al mismo tiempo, se van 
> intercambiando. Si trabajaran varios al mismo tiempo ¿sería más rápido? 
> si es así, ¿como hago para que trabajen juntos?
> 
> Yo les tengo fe a ustedes, creo que aquí alguien me va a poder guiar 
> para hacer que esto funcione más rápido.
> 
> Saludos!!

A no ser que me equivoque, creo que MATLAB no permite utilizar los 
procesadores en paralelo. Si quieres utilizarlos todos a la vez debes 
hacer un programa que envíe diferentes cálculos a diferentes 
procesadores al mismo tiempo.

Para hacer esto puedes utilizar OpenMP (http://openmp.org/wp/). Mira la 
wikipedia para una pequeña introducción 
(http://es.wikipedia.org/wiki/OpenMP). Tal vez sea posible utilizarlo 
con el lenguaje de MATLAB pero no lo sé.

Pero si no utilizas (o no puedes) esto o algo similar, el QuadCore sólo 
te va a servir para ejecutar cuatro programas a la vez, no para dividir 
por cuatro el tiempo de ejecución de un sólo programa.

Saludos.

Pablo.



Más información sobre la lista de distribución ubuntu-es