[fpc-devel] Light weight threads for FPC

Mattias Gaertner nc-gaertnma at netcologne.de
Mon Dec 17 11:43:48 CET 2007


On Mon, 17 Dec 2007 09:41:43 +0100
Michael Schnell <mschnell at lumino.de> wrote:

> IMHO the language itself might be enhanced for parallel processing.
> 
> The implementation should be done in the RTL (or supposedly rather a 
> special library). Here the methods of distributing potentially
> parallel tasks on "executors" is defined. It should work according to
> a set of parameters (e.g. Count of available processors, a parameter
> list for the processors (e.g. speed), a penalty estimation for
> starting an "executor" (small for lightweight threads, high for
> cluster machines), ...) Moreover the library of course holds the code
> to create thread pools, assign tasks to threads, transport parameters
> to the thread, retrieve results from an "executor", etc.
> 
> A first implementation of course should just provide (light weight) 
> threads (supposedly with a thread pool at least in Windows). Maybe
> the only primary tuning parameter being the count of CPUs. But it
> should be done in a way, that it can be extended to more
> sophisticated parameters and finally to cluster controlling, just by
> enhancing the library code.

For clusters there is already a de facto standard: MPI. It works with
FPC.

 
> IMHO, all this should not impose any problems for the implementation 
> with "light weight threads".

AFAIK OpenMP and MPI work well together and are separate.


Mattias



More information about the fpc-devel mailing list