6.3.7 Use task parallelism
Task or functional parallelism involves dividing an application by function into different tasks.
For example, an online game can take advantage of task parallelism.
To run an online game, your device performs several functions:
- Communicates with
an external server.
- Reads player input.
- Updates the game state.
- Generates sound effects.
- Plays music.
- Updates the display.
These tasks require synchronization but are otherwise largely
independent operations. This means you can execute the tasks in
parallel on separate processors.
Another example of task parallelism is Digital Television (DTV).
At any time the television might be performing several of the following
- Downloading a
- Recording a program.
- Updating the program guide.
- Displaying options.
- Reading data from media storage device.
- Playing a program.
- Decoding a video stream.
- Playing audio.
- Scaling an image to the correct size.