MemTest86 tries to do a complete test of the RAM. While doing so, it has also become
a good all-around test, since some of the tests also touch upon the motherboard's
memory controller and the CPU.
RAM has much increased, to the point that a portable phone may today contain
more RAM than for a mainframe of 20 years ago. The tests have multiplied as
MemTest86 has evolved, and so has the RAM.
Although the RAM has become faster, the tests are still time-consuming,
measured in hours or even days.
Now for the bad news: I have found at least two respectable sources,
that give the same advice. I quote from Ten Forums:
MemTest86+ needs to run for at least 8 passes to be anywhere near conclusive, anything less will not give a complete analysis of the RAM.
If you are asked to run MemTest86+ by a Ten Forums member make sure you run the full 8 passes for conclusive results. If you run less than 8 passes you will be asked to run it again.
I should remark that MemTest86 has two versions, the Free and Pro, where the Pro
version has several more tests than the Free version and configuration options.
You may see the differences in the article
More information about the optimal number of passes can be gleamed from the article
MemTest86 Technical Information
from the description of the MemTest86 config file,
mt86.cfg, available only in
the Pro version:
Specifies whether the first pass shall run the full or reduced test.
By default, the first pass shall run a reduced test (ie. fewer
iterations) in order to detect the most obvious errors as soon as
Conclusion 1: The first pass is shorter and faster, intended mostly to detect
hard errors. The fact that the first pass has passed without error is
encouraging, but users of the Free version need to wait for the second pass
for the full gamut of tests.
The largest number of passes I have found was in this test:
Test 7 [Moving inversions, 32 bit pattern]
This is a variation of the moving inversions algorithm that shifts the
data pattern left one bit for each successive address. The starting
bit position is shifted left for each pass. To use all possible data
patterns 32 passes are required. This test is quite effective at
detecting data sensitive errors but the execution time is long.
Conclusion 2: Test 7 needs 32 passes to be totally complete,
which I take as the upper bound on the number of passes required for
a really exhaustive test.
I also remark that many of the tests use a random pattern, with a different
pattern for each pass, meaning that each pass is different.
Taking it to absurd heights, we might conclude that there is no upper
limit to the number of passes required for an absolutely conclusive result.
My opinion as regarding the number of passes is that one should run as many
passes as one has the time to wait.
The lower bound seems to be two passes, as only the second one will be a full test.
But the question of "how much is enough" has no real answer.
I note again that for the two technical references that I cited above,
the minimal number of passes required for a good and conclusive result is
8 passes (perhaps so that Test 7 will do one whole 8-bit byte, among other
On the other hand, errors found by MemTest86 should be taken very seriously.
As the question was raised here about the acceptable amount of failures,
my answer is that even one failure is too much and not acceptable.