liveBook · Manning

Memory bound

As explained in Advanced Algorithms and Data Structures

A bottleneck is a component or operation that limits the overall throughput or performance of a system.

A bottleneck limits a computation’s throughput. In a coin-counting task, one worker becomes the bottleneck when it must sum hundreds of long lists. section 13.2.1

Adding an intermediate aggregation level divides the results among workers, each summing shorter lists. This redistributes the work; the example does not diagnose a memory-specific limit. section 13.2.1

Figure 13.5 Revised coin counting process, using MapReduce and a little help. Now, each counting machine produces several lists, one for each member of the McDuck family at level 2. They, in turn, will have to check a hundred lists, but each with just a few entries, and sum up the values in each list by entry.

The revised coin-counting diagram shows how an intermediate level distributes summation work. section 13.2.1

How Advanced Algorithms and Data Structures covers it

How deep it goes
Works through a concrete redistribution of summation tasks, without memory-specific diagnosis or quantitative performance analysis.
Examples
Uses Donald Duck’s coin-counting task to contrast one overloaded summation stage with an intermediate level of workers.
What you can do after
Understand how an intermediate aggregation level can divide result-summing work among several workers.
How it connects
Connects bottleneck reduction with parallelization, MapReduce, and aggregation.

Also explained in

Compare how 11 books explain memory bound →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Advanced Algorithms and Data Structures. The section links point to the parts of the book it draws on.