Announcement

Collapse
No announcement yet.

Write load through test 14 DMA?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Write load through test 14 DMA?

    The DMA test just reads and writes data to the flash drive.
    https://forums.passmark.com/memtest8...3220#post53220

    I suspect that the amount of data that Test 14 writes to the USB stick is proportional to the amount of RAM to be tested.
    Inexpensive USB sticks in particular only have a very short service life if they are written to a lot.
    It could therefore happen that Test 14 with, say, 128 GB of RAM may quickly kill a cheap 8 GB stick.​

    So, how large is (approximately) the amount of data that Test 14 writes to the USB stick (in relation to the size of the tested RAM)?​

  • #2
    If using Test #14 DMA, you don't need a 128GB Flash drive to test 128GB of RAM.
    If the flash drive is large enough to install the MemTest86 software, then there is enough space on it for Test #14.

    But you are correct, USB flash drives are very unreliable. We saw a lot more Flash drive failures than RAM failures when using this test. Which is also why it is turned off by default.

    Comment


    • #3
      Originally posted by David (PassMark) View Post
      If using Test #14 DMA, you don't need a 128GB Flash drive to test 128GB of RAM.
      If the flash drive is large enough to install the MemTest86 software, then there is enough space on it for Test #14.
      Yes, understood, MemTest86 reads and writes during Test #14 only to this special 512 MB partition. So, even a USB flash drive with only 2 GB capacity is sufficient.

      My question was how much data writes MemTest86 during a Test #14 into with partition in sum (in relation to RAM tested).
      I guess, to test, say, 128 GB of RAM, MemTest86 will have to write (at the minimum) in sum 128 GB to this 512 MB partition.

      Now, a cheap USB flash drive may have a capacity of 16 GB.
      The "Total Bytes Written" that such a drive can handle is perhaps 30 to 100 times its capacity, i.e. 480 to 1600 GB.
      (The lower limit is more likely in my experience since the wear leveling algorithms of USB flash drive controllers aren't the best.)

      Ok. When we run MemTest86 with 4 passes and 128 GB of RAM then in sum 4 x 128 GB = 512 GB may get written to the USB flash drive... RIP.

      Originally posted by David (PassMark) View Post
      But you are correct, USB flash drives are very unreliable. We saw a lot more Flash drive failures than RAM failures when using this test. Which is also why it is turned off by default.

      The - potentially - huge amounts of data that MemTest86 writes to the flash drive may be the reason for the failure of the flash drive.
      So, it's a very good idea to turn this off by default.

      I don't want to quibble:
      It's very reasonable to test DMA but at the same time it's a real problem to find a suitable (and available) communication partner for the RAM to do DMA.

      Comment


      • #4
        it's a real problem to find a suitable (and available) communication partner for the RAM to do DMA.
        Correct. We investigated doing direct RAM to RAM DMA. As a few memory controllers claimed support for this. This would have been a great option.
        But the technical documentation to make this work on x86 is pretty much non existent. We failed to get it to work, or maybe the hardware we had didn't actually support it.
        But if anyone knows the deep internals of this, please contact us.

        I don't know the exact ratio of bytes written to bytes installed off the top of my, head but it is not as bad as the worst case. It would be too slow to write the your 512GB to a USB2 drive (around 8 hours just for test #14).

        Comment


        • #5
          Originally posted by David (PassMark) View Post
          Correct. We investigated doing direct RAM to RAM DMA. As a few memory controllers claimed support for this. This would have been a great option.
          But the technical documentation to make this work on x86 is pretty much non existent. We failed to get it to work, or maybe the hardware we had didn't actually support it.
          But if anyone knows the deep internals of this, please contact us.
          Ah yes, RAM to RAM via DMA would be just the perfect solution. (Unfortunately, I can't help here.)
          Thanks for your explanation.
          Perhaps a note (or warning) that Test #14 involves quite a lot of write operations to the USB flash drive -- that may kill a cheap'n'small drive -- would be a good idea.

          Comment


          • #6
            Quote from the MemTest86 User's Guide.

            "MemTest86 USB flash drive and the system memory. As this introduces an additional component to the data flow, errors detected by MemTest86 may not be an issue with the memory or DMA subsystem, but with the USB flash drive itself. If MemTest86 detects errors during the DMA Test, there is a possibility of a fault in the USB flash drive. In such cases, it is recommended to re-run the tests using another known reliable USB flash drive."

            Also we checked the amount of data written to the USB drive. It matches the amount of installed RAM.
            16GB of RAM ==> 16GB written to USB drive (but the drive can be much smaller and it will loop over the same area of the drive)

            Comment

            Working...
            X