On Wed, Nov 23, 2011 at 9:59 PM, Vengadanathan <[email protected]> wrote:
> Hello ,
> I have few doubts regarding parallel processing on multiprocessor
> architecture .
> I have heard of parallel computing languages , that enables us to utilize
> multiprocessor
> architecture , my doubt is operating system is responsible for scheduling
> the process
> to each processor ,  then simply if i use fork() to create child process
> wont it be allocated by
> operating system effectively to the processors ,then why should i go for a

In parallel computing or processing, you aren't runnning just
independent processes by forking (with separate memory space). The
problem becomes to share data between these children processes that,
if done inefficiently, can become a bottle-neck. Other issues like
consistency also arise. For example, ensuring the cache built inside
the CPU core is consistent (let's say two threads are working on the
same data which has been cached, if 1 thread writes to it, how is that
change propagated to the other core?).

With this in mind, MPI [1] for example, is one way of interprocess
communication designed for parallel computing. You should be able to
see now how the operating system (and programing paradigm) may play an
important issue.


Thanks,
SB

[1] http://en.wikipedia.org/wiki/Message_Passing_Interface

-- 
Mailing list guidelines and other related articles: http://lug-iitd.org/Footer

Reply via email to