CSP, como cálculo de proceso, es fundamentalmente una cuestión teórica que nos permite formalizar y estudiar algunos aspectos de un programa paralelo.
Si por el contrario desea una teoría que permite construir programas distribuidos, entonces usted debe echar un vistazo a parallel structured programming.
programación estructural paralelo es la base de la investigación HPC actual (computación de alto rendimiento) y proporciona a usted una metodología sobre la forma de abordar y programas paralelos de diseño (esencialmente, diagramas de flujo de la comunicación de los nodos de computación) y sistemas de tiempo de ejecución a los implementa.
Una idea central en la programación estructurada en paralelo es esqueleto algorítmico, desarrollado inicialmente por Murray Cole. Un esqueleto es algo así como un patrón de diseño paralelo con un modelo de costo asociado y (generalmente) un sistema de tiempo de ejecución que lo admite. Un esqueleto modelos, estudio y admite una clase de algoritmos paralelos que tienen una cierta "forma".
Como un ejemplo notable, mapreduce (popularizada por Google) es sólo una especie de esqueleto que se ocupan de paralelismo de datos, donde un cálculo puede ser descrito por una mapa fase (aplicar una función f para todos los elementos que componer los datos de entrada) y reducir la fase (tomar todos los elementos transformados y "combinarlos" usando un operador asociativo +).
La idea de la programación estructurada paralela me pareció útil tanto en el aspecto teórico como en el práctico, por lo que le sugiero echarle un vistazo.
Una palabra sobre multi-threading: dado que los esqueletos abordan el paralelismo masivo, generalmente se implementan en memoria distribuida en lugar de compartirse. Intel ha desarrollado una herramienta, TBB, que se ocupa de la multiproceso y (parcialmente) sigue el marco de programación estructurado en paralelo. Es una biblioteca C++, por lo que probablemente solo pueda comenzar a utilizarla en sus proyectos.
lol @ 50k loc ser grandes –
[PySCP] (http://code.google .com/p/pycsp /) parece una implementación práctica viable de CSP. Algunos ejemplos están incluidos. Aunque, por el momento, se dice que se usa solo con fines educativos. – spacediver