Programming Models Flashcards

1
Q

What is Flynn’s Taxonomy?

A

• Michael J. Flynn in 1972 came up with models of computing, by separating Instruction Streams and Data Streams

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is Shared Memory Programming?

A

All memory is accessible
• Limited to addressable memory
• Limited to the number of cores

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is Distributed Memory Programming?

A

• Data exchange has to be explicit
• Network latency/bandwidth become important.
• Expandable; more memory/cores as and when you need them

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How is Shared Memory Programming programmed?

A

• Programmed using OpenMP (among other thread-programming models)
• Easier to program, but easier to make mistakes like race conditions
• Directives based (#pragma omp…)
• Incremental changes to code
• Same code also works well on single core, without OpenMP
• MPI works for shared memory as well

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How is Distributed Memory Programming programmed?

A

Programmed with MPI
• Message parsing interface
• Explicit communication using library calls
• More intrusive – your code typically needs to be (re)written with MPI in mind
• Different implementations of the MPI standard
• Non-portable – Code written with MPI has to use MPI

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How is Shared Memory Programming distributed?

A

• Used within a single node distributed over cores

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How is Shared Memory Programming limited?

A

• Mostly limited by memory:
• Resource contention (traffic on the bus, accessing the same memory)

Context switching can be an issue (not on Barkla)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is a Makefile?

A

• A makefile is used to place compiler instructions under simple commands

How well did you know this?
1
Not at all
2
3
4
5
Perfectly