Previous | Next --- Slide 6 of 92
Back to Lecture Thumbnails
Nian

The 'thread' in this page can be actually thoughout as 'processes', right?

MasonLlewellyn

Yes, these "threads" can be modeled by two communicating processes on the same computer or even as two different processes on different computers communicating over a network.

chii

What is the hardware implementation detail of these passed messages and its impact on performance? Are they put in register / cache / memory, etc?

l-henken

@chii I think message passing (MP) is more of a programming model/abstraction than an implementation detail. Abstractly thinking of private address spaces that must communicate with messages allows us to investigate the performance "characteristics" of MP as opposed to the performance itself. That is, we can generalize about the factors that contribute to the performance of any MP system. These factors include but are not limited to communication latency, communication throughput, synchronization, etc.

kevtan

I agree with what @l-henken said about message passing being a kind of thought primitive for one way to write parallel programs but I also wanted to respond to @chii to say that it really depends on what the two communicating entities are. If there are threads belonging to the same process, then it's entirely possible that the implementation actually uses shared address space programming with locks and the like. If they are processes on different machines, then the implementation of message passing is going to have to rely on networking principles.

Please log in to leave a comment.