Previous | Next --- Slide 6 of 64
Back to Lecture Thumbnails
suninhouse

Static assignment essentially means that the assignment is determined at compile time and it is expected to be å reasonable assignment for all possible tasks, which if untrue, should consider dynamic assignments.

lfu

@suninhouse Static assignment is not necessarily determined at compile time (see previous slide [5]), it may depend on runtime parameters like "input data size" or "number of threads." Rather, static assignment is just a clear assignment of how data will be distributed, as opposed to doing something like splitting into several tasks, adding them to a queue, and letting threads decide what to run based on their workload (which may vary).

jgrace

How often in practice does the programmer know enough about the costs for a static assignment to be more useful than a dynamic or semi-static assignment? The circumstances when we do know enough about each task to make a good static assignment seem a little bit contrived like computing the Mandelbrot set.

teapot

I think programmers are notoriously bad at estimating the behavior of the programs, but in practice several iterations of performance profiling and tuning can definitely help.

Please log in to leave a comment.