What is single program multiple data, Computer Engineering

Assignment Help:

Q. What is Single Program Multiple Data?

A general style of writing data parallel programs for MIMD computers is SPMD (single program, multiple data) means all processors execute same program however every processor operates on a separate part of problem data. It's easier to program than true MIMD however more flexible than SIMD. Though most parallel computers today are MIMD architecturally they are generally programmed in SPMD style. In this style though there is not any central controller the worker nodes carry on doing basically the same thing at effectively same time. Rather than central copies of control variables stored on control processor of a SIMD computer, control variables (iteration counts and so on) are generally stored in a replicated fashion across MIMD nodes. Every node has its own local copy of these global control variables however each node updates them in an identical way. There are no centrally issued parallel instructions however communications generally occur in well-defined collective phases. These data exchanges happen in a prefixed manner which implicitly or explicitly synchronizes the peer nodes. The condition is something such as an orchestra without a conductor. There is no central control however every particular plays from the same script. The group as a complete stays in lockstep. This loosely synchronous style has a number of similarities to Bulk Synchronous Parallel (BSP) model of computing introduced by theorist Les Valiant in early 1990's. The limited pattern of the collective synchronization is easier to deal with than complex synchronisation problems of a general concurrent programming.


Related Discussions:- What is single program multiple data

Algorithms, Data array A has data series from 1,000,000 to 1 with step size...

Data array A has data series from 1,000,000 to 1 with step size 1, which is in perfect decreasing order. Data array B has data series from 1 to 1,000,000, which is in random order.

Define coupling, Define Coupling? Coupling means the measure of interco...

Define Coupling? Coupling means the measure of interconnection between modules in a program structure. It depends on the interface problem between modules.

Shared memory model, In the shared-memory programming model, tasks share a ...

In the shared-memory programming model, tasks share a common address space, which they read and write asynchronously. Several mechanisms such as locks / semaphores may be used to c

Explain non-pre-emptive algorithms, Explain non-pre-emptive algorithms?   ...

Explain non-pre-emptive algorithms?   Non preemptive algorithms: In this algorithm a job is provided to CPU for execution as long as the job is non-completed the CPU cannot

Define congestion, Define Congestion. Congestion: This is uneconomic ...

Define Congestion. Congestion: This is uneconomic to give sufficient equipment to carry all the traffic which could possibly be offered to a telecommunication system. Inside

Characteristics of storage - computer architecture, Characteristics of comp...

Characteristics of computer storage: Storage technologies at all of levels of the storage hierarchy may be distinguished by evaluating particular core characteristics and alon

What information is stored in a typical TLB table entry, In a simple paging...

In a simple paging system, what information is stored in a typical Look-aside Buffers  TLB table entry? A classical TLB table entry contains page# and frame#, while a logical

Translation look aside buffer - computer architecture, Translation Look asi...

Translation Look aside Buffer :    A TLB is a cache that holds only page table mapping If there is no matching entry in the TLB for a page ,the page table have to

What is uml architecture, Takes care structural and behavioural aspect of a...

Takes care structural and behavioural aspect of a software system. Contains software usage, functionality, performance, economic, reuse, and technology constraints.

Define refresh circuits, Define Refresh Circuits? It is a circuit which...

Define Refresh Circuits? It is a circuit which make sure that the contents of a DRAM are maintained when every row of cells are accessed periodically.

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd