How to understand memory overload (also called memory overflow) using Merge/Purge Plus

Merge/Purge Plus all versions, all platforms
More detailed information can be found in the Merge/Purge Plus User’s Guide is the sections "Record Sequences and Memory Loads", "Defining Memory Loads", and "Break Lengths and Load Limits Example".

From the User's Guide-
When Merge/Purge Plus performs duplicate elimination, it loads a series of records into memory and then compares those records amongst each other. The group of records that are loaded into memory together is called a memory load group. Records that are not in the same memory load group will not be compared to each other, and therefore will never be found as duplicates. For this reason, it is important to determine the best number of records that should be loaded into memory at a time. When Merge/Purge Plus is creating a memory load group, it continues loading records into memory until one of the following three conditions occurs.
• The data in the break length changes for the next record
• The specified maximum number of records has been loaded
• There is no more room in memory.
Used together, these conditions help you form memory load groups that are large enough to find all potential duplicates, but small enough that a memory overflow does not occur.
UPDATED:  October 16, 2017