The tool reduces test cases to make them easier to debug. It removes pieces from input data and testing each variant to see if it still reproduces the bug.
In the end you have a much smaller reproducer which is easier to debug. Here's a tutorial for gcc .
Most serious compilers use one in some shape or form, e.g. delta (which probably was the first widely used one) or creduce (which hugely improved the state of the art for C), and also various descendants reducing on something different (like LLVM bugpoint ). A lot of the original ideas go back to Andreas Zeller's delta debugging 
Somehow the blog author forgets to mention this rich history.
TL;DR: DustMite feeds reductions/variations of a data set (like your source code) into an oracle which tests if it satisfies some property. The primary example is reducing your source code to a local minimum that still exhibits some compiler failure.
The article's conclusion notes some other cool uses; my favorites were:
- "reducing a large commit to a minimal diff"
- "reducing a commit list, when git bisect is insufficient due to the problem being introduced across more than any single commit;"
- "reducing a large data set to a minimal one, resulting in the same code coverage, with the purpose of creating a test suite;"
- "if you have complete test coverage, it can be used for reducing the source tree to a minimal tree which includes support for only enabled unittests. This can be used to create a version of a program or library with a test-defined subset of features."
(I also detached your other comment so that it can float to the top and get more attention.)