Im running memtest now for over 60 hours and don't really understand when it stops. As per the web it runs 12 tests. But are these tests run per memory slot? I have 6 slots and currently passed 21, but it is still going. To get a pass, the 12 tests are run. So I'm a bit confused when this will end.
If there were errors, the program would also loop. Either way it's your job to stop it. In case of errors there's almost no point of running additional passes. If there are no errors, running multiple passes is advised because there's non-zero probability that a faulty memory module successfully passes all tests. The more passes without errors, the more certain you may be your RAM is fine. In this case you stop the program when you think it's enough.
The current MemTest86 V7 release auto-terminates after 4 passes. It is a good idea to do at least 2 passes, as the first pass is a quicker less intense pass. This was a design choice done with the goal of picking up gross errors faster.
My computer hangs at random on multiple occasions and on different OSes today, requiring me to hit the reset button. I suspect it could be a memory problem and did a memtest with memtest86.
90% of the time, if the RAM has a problem, memtest will find it within 10 seconds, 99% of the time, one pass will be enough to find the issue. The longer it takes to find the issue, the more subtle it is and the less likely it is the cause a problem with your PC (but you should still get new ram if you get even one error)
As the your computer is crashing quite frequently and you have run a few passes, It's probably not your RAM. As a next step, you should test you hard drive and then CPU with a tool such as Ultimate Boot CD or Hiren's. (Most modern BIOS's also have a built in HDD testing feature)
I've run memtest and seen 6 passes with no errors, with 4+ errors per pass after that. I normally just run 3-4 passes, but it's certainly possible to miss errors by doing just a couple of passes. I'd imagine that some errors only pop up as the memory modules heat up, thus causing problems with memory running at a high voltage.
RAM has much increased, to the point that a portable phone may today containmore RAM than for a mainframe of 20 years ago. The tests have multiplied asMemTest86 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.
I should remark that MemTest86 has two versions, the Free and Pro, where the Proversion has several more tests than the Free version and configuration options.You may see the differences in the articleFeature Comparision.
More information about the optimal number of passes can be gleamed from the articleMemTest86 Technical Informationfrom the description of the MemTest86 config file, mt86.cfg, available only inthe 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. feweriterations) in order to detect the most obvious errors as soon aspossible.
Conclusion 1: The first pass is shorter and faster, intended mostly to detecthard errors. The fact that the first pass has passed without error isencouraging, but users of the Free version need to wait for the second passfor the full gamut of tests.
This is a variation of the moving inversions algorithm that shifts thedata pattern left one bit for each successive address. The startingbit position is shifted left for each pass. To use all possible datapatterns 32 passes are required. This test is quite effective atdetecting data sensitive errors but the execution time is long.
I also remark that many of the tests use a random pattern, with a differentpattern for each pass, meaning that each pass is different.Taking it to absurd heights, we might conclude that there is no upperlimit 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 manypasses 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 is8 passes (perhaps so that Test 7 will do one whole 8-bit byte, among otherreasons).
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.
I have seen RAM pass the first 6 passes of memtest and then fail subsequent passes, and when running a Linux OS with that RAM would see locking up after a 6-8 hours. Other RAM on the same motherboard ran fine, so apparently the failing RAM was temperature sensitive.
When I suspect a RAM problem (e.g. Dell computers with diagnostic lights) I run memtest on one RAM module at a time in the first slot for 8-16hrs. If it passes that confirms both that slot and RAM module are good and I can (more) confidently use that slot to test other RAM modules.
Although memtest works the majority of the time, it failed me a couple of times. The first time it failed to detect errors i had a PC with 1x 4GB DDR3 that was giving me BSODs related to the memory. I ran memtest for an entire day, we're talking about 15+ passes but no errors. I then tested it on a completely different computer, same thing, no errors. Operating system was completely unstable but no errors on memtest. I then used a different software named "PC-Check" from Eurosoft which is very similar to memtest but uses different algorithms. It is also bootable, does not need any operating system. It detected errors in less than 5 minutes. I then was able to send the module to Corsair RMA and get a replacement.
So, memtest is very good but not always enough. I currently use memtest and PC-check to check memory. If memtest fails to detect errors, PC check certainly will and vice versa. And trust me, it happens more often than one would think.
I'd say 3 passes is generally enough. If you want to be extra sure, do 8 or 9 passes, since @Jeff saw errors in one case only on his 7th or later pass, but that can take forever! So, to be more practical, perhaps just limit yourself to one 8-hr overnight run so long as at least 3 passes are achieved, or one 24-hr whole-day + night run as long as at least 3 passes are achieved.
Here is something to keep in mind though. Memtest will only prove that your RAM has issues, but it will not prove that it does not have issues (even after 10 hours of tests). Even if you run the test 100 times you can not be sure that it would not spit out an error after the 101th run.
It depends on your tolerance for flakiness and crashes. On my primary computers I run Linux, and I have zero tolerance. My machines are typically up for upwards of a year before I reboot it or there is a power failure. There have been cases where it has been several (years). Then something odd happens for the second or third time, I shift to another platform and start diagnosing. It is almost always the RAM (Was an Ethernet board once, and a switch once, which only needed new capacitors).
Given this perspective, I have a different take on number of passes. When I buy a new machine (literally or new to me on ebay) I run it for 1-3 or 4 weeks depending on my patience. After that, it has always run indefinitely. The only bad machines I have taken on were two Apple XServes from 2009 with 24GB of memory that I got for free. Each had one bank of bad DIMMs, and after removal they ran for many weeks before I got around to turning them off. With 8 physical XEON cores running concurrently that was quite a few iterations. It took a week or so to fail memtest86. Then I repeated the failure (Another many days! What a pain...), then I replaced the bad DIMMs.
I had a Toshiba laptop running Windows that would run for various times, hours to a couple of weeks. I found that it was lacking thermal compound and instead using some foam thing between the CPU and GPU and heat pipe. I replaced it with thermal grease (albeit not mechanically tight since the mechanical design assumed a thermal pad with non-zero thickness) and that helped considerably, but it still crashed on occasion. I threw it out.
Yes, if something is very grossly wrong, it will be found on the first pass, but usually it takes a few dozen hours. The machines I am talking about all take about an hour, hour and a half to run a single pass so that would be a few dozen passes.
I had some motherboards which all consistently failed memtest86 after a few months of running, yet memtest86 did not find anything (I don't recall how much patience I had with run-time). I dropped from 4 to 3 banks of memory and they never crashed again. My ASUS motherboards with the same exact chipset always worked fine with 4 banks. Both used Crucial memory.
I used to use the clock control feature of the BIOS to UNDER clock a step under the theory that this would make the machine more reliable if DRAM timing is the problem, but when I did have a problem it never helped, and the incident above is the only time I found that reducing the load on the common lines helped.
With Windows machines, I find that often they still pass the memtest86 for a couple of weeks test, but the machine remains unreliable under Windows. Sometimes an imperfect machine is suddenly reliable after a Windows release boundary. I had an issue before and during Covid with resolved on the fourth semi-annual Windows release - three releases with the problem! The same machine was suddenly rock-solid.
So if you reboot every day, or are happy saying "Oh, gotta reboot", and are not paranoid that some day the bad bit is going to be in your data instead of the instructions, then I would say to run memtest86 for at least a full day. In my experience most things are found in more than a few passes and less than a day. The information about the first pass being less thorough makes sense - I think it has always made it through the first pass or two. But a full day is not by any means conclusive. I am confident that a full month is, and I often compromise and run it for 2-3 weeks because I am impatient.
3a8082e126