On 1/17/13 11:45 AM, Chema Cortes wrote:
El día 16 de enero de 2013 17:29, Francesc Alted <fal...@gmail.com> escribió:
On 1/16/13 4:34 PM, Jaime Perea wrote:

Cuando habláis de computación distribuida, ¿se refieres a python en
entornos,
digamos, mpi o sólo en memoria compartida?.
No sé lo que piensa Chema en particular, pero para nosotros (Continuum), los
dos.
Bajo el paraguas de "computación distribuida" caben muchas cosas. Si
importa la escabilidad, entonces se deben evitar los sistemas de
"memoria compartida". Pero hay más opciones que MPI como, por ejemplo,
los sistemas que implementan el modelo Actor como hacen la librería
Akka[1] (scala/java) y su imitación en python, Pykka[2], basada en
gevents[3].

En efecto, caben muchas cosas (no conocía los paquetes que mencionas, pero son interesantes). Un sistema de ficheros distribuido en el fondo es otra manera de comunicar datos entre diferentes nodos. Todo depende de lo que se quiera hacer. Por ejemplo, para hacer cálculos que requieran mucho trasiego de datos hay pocas cosas mejores que un paradigma de multihilos accediendo a la misma area de memoria (por ejemplo, coprocesadores como GPUs o Intel Xeon Phi funcionan así). Incluso sistemas con memoria compartida usando procesadores con arquitectura Intel tradicional se pueden llegar a configuraciones bastante potentes con 40 cores físicos y 750 GB de RAM (que ya está bien).

Para cosas que requieren mas memoria hay que ir a sistemas distribuidos, y aquí MPI ahora mismo es el rey, ya que existen versiones optimizadas que permiter aprovechar al máximo el hardware de comunicaciones (por ejemplo, Infiniband).

Entre estos extremos existe efectivamente un conjunto de soluciones realmente grande.

--
Francesc Alted

_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a