On Mon, 5 Apr 2010, Werner Van Belle wrote:
Michael Van Canneyt wrote:
Hello,
This looks promising.
Can you explain the similarities and differences with MPI ?
That would require me to read up on what MPI is and honoustly, I'm not a
big fan on doing that, certainly not after I went to their homepage and
saw around 70 lines of contributing companies, all of them big names.
If my guess is correct, MPI is similar to a CORBA IDL Specification (in
general terms). If this undertsanding is correct then MPI has nothing to
do with the Acrtive Objects as I present them. E.g: the active objects
library cannot perform interprocess communication and certainly not
accross different machines. It only deals with thread activation and
deactivation at appropriate times. To do so, it uses a queue in which a
normal stackframe is pushed and at a later time executed.
MPI is for passing messages between parallel running tasks.
(the name means Message Passing Interface)
This is what Active Objects does.
To me, the difference seems that Active Objects runs within a single
process, and MPI allows to run the tasks in different processes, even
on different machines.
Several people have asked about MPI in Free Pascal. Maybe
this is an answer for them.
People hoping that this is an MPI (in the sense of
http://www.mcs.anl.gov/research/projects/mpi/) for pascal will be
disappointed. Those who are looking for an alternative to thread based
approaches to deal with multiple tasks in a single program might find
this interesting.
It seems to me that there are more parallels between MPI and Active Objects
than you think. Both are tools for parallel (sic) computing, after all.
Michael.
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal