• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

GPU memory testing program

Kevin C

New Member
Joined
Mar 23, 2016
Messages
11 (0.00/day)
Hello everyone!

I made a program for testing GPU memory.

It's free!

You can get it here:
http://www.programming4beginners.com/gpumemtest

It's for Windows Vista / 7 / 8 / 10 . It should work on common discrete GPUs. It does what it says. It's simple. It's shareware. That's all.

Cheers!

Edit: Overclockers! Please do not use GpuMemTest on AMD GPUs. It might not be able to detect overclocked memory errors on AMD GPUs.
 
Last edited:
i ignored all the warnings windows 10 fired at me and installed the program.. it quickly told me my overclocked gpu memory was okay..

trog
 
i ignored all the warnings windows 10 fired at me and installed the program.. it quickly told me my overclocked gpu memory was okay..

trog
Your bank accounts are now owned by a Nigerian Princess ... :roll::roll::roll::roll:
 
it seems a neat and quick way of checking overclocking on vram.. mine is running at +244 which i recon is well within what it can do.. i have run it at +300..

i run a paid for AVG anti virus thing which i trust more than windows 10.. that cleared it okay..

trog
 
Perhaps you should have run this by @W1zzard first before you posted link
In the meantime Thanks
 
Not sure if it works, but what I know for sure is that:
a) It allocates available GPU memory (in my case 1.6GB / 2.0GB)
b) It does something...

Not sure if 15-second runtime with a couple of fill patterns will suffice to determine GPU memory errors, but until I see the source or at least more details on how it works, I can't really tell if it even does anything.
 
b) It does something...

Not sure if 15-second runtime with a couple of fill patterns will suffice to determine GPU memory errors, but until I see the source or at least more details on how it works, I can't really tell if it even does anything.

- You can try raising the memory clock until it fails on the test.
- Finding memory errors is a complicated topic. Basically what it does is writes (on allocated chunk), then reads to check that the written data is correct. The patterns are: sequential, random, sequential backwards, overlapping/non-overlapping blocks. The data written is either random (then a second pass inverted), or walking (sparse) ones (and then inverted).

About memory errors, I reckon there are 3 possibilities:
1) you got a bad chip or board. It will be detected
2) the memory clock is too high. That will be detected
3) "weak board, transient errors" - some boards simply have a higher transient error rates than others. The error rates can range from a few errors per year to several thousands per year. This will (in many cases) not be detected by GpuMemTest. The best way to detect it would be to use ECC. Otherwise, a memory test which runs overnight would increase the confidence in the board, but many cases would still go undetected. But, anyways, this kind of problem is unlikely to have any major impact on your system, especially if you are just gaming.
 
have you tried the pattern 492492492492.... to test the gpu memory?

it seems that the 492 pattern is the magic hammer for the "row hammer" bug/error on memory sticks...
 
The row hammering test is not performed at all.

492.. that would be 010010010010..., every third bit set. GpuMemTest uses a pattern with every fifth bit set (10000100001...), every eleventh bit set and every thirteenth bit set, all of that walking and also inverted.
 
Last edited by a moderator:
Cannot download the file. Tried many times, every times it tells me ERR_CONNECTION_RESET when i click on the red link.
 
my chrome browser on win 10 wont download it unless i select keep at the bottom.. it defaults to discard.. after that win 10 does the same thing before installing it.. :)

i think its because its new and unknown..

trog
 
Tried chrome amd IE, both links from the first post and with HTTPS protocol, both failed. I can hardly tell there's anything wrong with my connection, as any other thing i usually do on the net is working (downloading, browsing, watching, utorrent). Weird...
 
Tried chrome amd IE, both links from the first post and with HTTPS protocol, both failed. I can hardly tell there's anything wrong with my connection, as any other thing i usually do on the net is working (downloading, browsing, watching, utorrent). Weird...

Your IP might be blacklisted :p
 
Hi. I've tested my 290x(4GB). it allocate 2160MB of Vram. my card is not stable at 1500mhz ram(blackscreen during 3dmark), but i can pass this test, i think is too short and not so hard on the memory system of the card. This app will be usefull if optimized
 
Tried chrome amd IE, both links from the first post and with HTTPS protocol, both failed. I can hardly tell there's anything wrong with my connection, as any other thing i usually do on the net is working (downloading, browsing, watching, utorrent). Weird...

Perhaps your antivirus does not allow you to download .exe files. Or it might be some new "safe browsing" scheme.
 
Hi. I've tested my 290x(4GB). it allocate 2160MB of Vram. my card is not stable at 1500mhz ram(blackscreen during 3dmark), but i can pass this test, i think is too short and not so hard on the memory system of the card. This app will be usefull if optimized

Interesting. Could you please run GpuMemTest once more, then send me the "Devices log" and "Execution log" on kevinc at programming4beginners.com
 
i can't find contact on your site. 2880mb used this time.
Code:
====================================================
GpuMemTest v1.2
Platform name   :AMD Accelerated Parallel Processing
Platform version:OpenCL 2.0 AMD-APP (2004.6)
Device name     :Hawaii
Device version  :OpenCL 1.2 AMD-APP (2004.6)
Driver version  :2004.6 (VM)
Platform selected #: 1
Device selected #: 1
Time: 2016-03-24 19:20:22 +0100
Initializing
Spilling out of device memory detected: 3532 MiB in 6 chunks.
Releasing extra memory.
Memory chunks count:  5
    Chunk 0  size: 754974720
    Chunk 1  size: 754974720
    Chunk 2  size: 754974720
    Chunk 3  size: 754974720
    Chunk 4  size: 0
Allocated 2880 MiB total, in 5 chunks
    Seed: 1458880130
    [test 1/8 pass 1/4] Random data, sequential
    Test time:  3284 ms
    [test 1/8 pass 2/4] Random data, sequential
    Test time:  3282 ms
    [test 1/8 pass 3/4] Random data, sequential
    Test time:  3294 ms
    [test 1/8 pass 4/4] Random data, sequential
    Test time:  3281 ms
    [test 2/8 pass 1/2] Block copy
    Test time:  4118 ms
    [test 2/8 pass 2/2] Block copy
    Test time:  2817 ms
    [test 3/8 pass 1/6] Walking inversions, stride 5 bits
    Test time:  3182 ms
    [test 3/8 pass 2/6] Walking inversions, stride 5 bits
    Test time:  3184 ms
    [test 3/8 pass 3/6] Walking inversions, stride 5 bits
    Test time:  3187 ms
    [test 3/8 pass 4/6] Walking inversions, stride 5 bits
    Test time:  3196 ms
    [test 3/8 pass 5/6] Walking inversions, stride 5 bits
    Test time:  3192 ms
    [test 3/8 pass 6/6] Walking inversions, stride 5 bits
    Test time:  3185 ms
    [test 4/8 pass 1/5] Random access, random data - write, read/write, read
    Test time:  4254 ms
    [test 4/8 pass 2/5] Random access, random data - write, read/write, read
    Test time:  4245 ms
    [test 4/8 pass 3/5] Random access, random data - write, read/write, read
    Test time:  4239 ms
    [test 4/8 pass 4/5] Random access, random data - write, read/write, read
    Test time:  4248 ms
    [test 4/8 pass 5/5] Random access, random data - write, read/write, read
    Test time:  4244 ms
    [test 5/8 pass 1/4] Block copy, sparse inversions, overlapping
    Test time:  4969 ms
    [test 5/8 pass 2/4] Block copy, sparse inversions, overlapping
    Test time:  4976 ms
    [test 5/8 pass 3/4] Block copy, sparse inversions, overlapping
    Test time:  4698 ms
    [test 5/8 pass 4/4] Block copy, sparse inversions, overlapping
    Test time:  4947 ms
    [test 6/8 pass 1/4] Block copy, random data, overlapping
    Test time:  3632 ms
    [test 6/8 pass 2/4] Block copy, random data, overlapping
    Test time:  3504 ms
    [test 6/8 pass 3/4] Block copy, random data, overlapping
    Test time:  3590 ms
    [test 6/8 pass 4/4] Block copy, random data, overlapping
    Test time:  3504 ms
    [test 7/8 pass 1/12] Walking inversions, stride 11 bits, backwards
    Test time:  3078 ms
    [test 7/8 pass 2/12] Walking inversions, stride 11 bits, backwards
    Test time:  3082 ms
    [test 7/8 pass 3/12] Walking inversions, stride 11 bits, backwards
    Test time:  3084 ms
    [test 7/8 pass 4/12] Walking inversions, stride 11 bits, backwards
    Test time:  3085 ms
    [test 7/8 pass 5/12] Walking inversions, stride 11 bits, backwards
    Test time:  3086 ms
    [test 7/8 pass 6/12] Walking inversions, stride 11 bits, backwards
    Test time:  3086 ms
    [test 7/8 pass 7/12] Walking inversions, stride 11 bits, backwards
    Test time:  3090 ms
    [test 7/8 pass 8/12] Walking inversions, stride 11 bits, backwards
    Test time:  3091 ms
    [test 7/8 pass 9/12] Walking inversions, stride 11 bits, backwards
    Test time:  3080 ms
    [test 7/8 pass 10/12] Walking inversions, stride 11 bits, backwards
    Test time:  3085 ms
    [test 7/8 pass 11/12] Walking inversions, stride 11 bits, backwards
    Test time:  3104 ms
    [test 7/8 pass 12/12] Walking inversions, stride 11 bits, backwards
    Test time:  3090 ms
    [test 8/8 pass 1/14] Walking inversions, stride 13 bits
    Test time:  3189 ms
    [test 8/8 pass 2/14] Walking inversions, stride 13 bits
    Test time:  3183 ms
    [test 8/8 pass 3/14] Walking inversions, stride 13 bits
    Test time:  3186 ms
    [test 8/8 pass 4/14] Walking inversions, stride 13 bits
    Test time:  3188 ms
    [test 8/8 pass 5/14] Walking inversions, stride 13 bits
    Test time:  3188 ms
    [test 8/8 pass 6/14] Walking inversions, stride 13 bits
    Test time:  3197 ms
    [test 8/8 pass 7/14] Walking inversions, stride 13 bits
    Test time:  3189 ms
    [test 8/8 pass 8/14] Walking inversions, stride 13 bits
    Test time:  3197 ms
    [test 8/8 pass 9/14] Walking inversions, stride 13 bits
    Test time:  3186 ms
    [test 8/8 pass 10/14] Walking inversions, stride 13 bits
    Test time:  3201 ms
    [test 8/8 pass 11/14] Walking inversions, stride 13 bits
    Test time:  3182 ms
    [test 8/8 pass 12/14] Walking inversions, stride 13 bits
    Test time:  3201 ms
    [test 8/8 pass 13/14] Walking inversions, stride 13 bits
    Test time:  3187 ms
    [test 8/8 pass 14/14] Walking inversions, stride 13 bits
    Test time:  3186 ms
End execution
Total time:  175957 ms
All tests OK.
Code:
GpuMemTest v1.2
time: 2016-03-24 19:23:58 +0100
OpenCL platform count: 1
=============================
AMD Accelerated Parallel Processing
    Advanced Micro Devices, Inc.
    OpenCL 2.0 AMD-APP (2004.6)
    FULL_PROFILE
     ===Devices===
    Hawaii
        default device
        Advanced Micro Devices, Inc.
        OpenCL 1.2 AMD-APP (2004.6)
        2004.6 (VM)
        FULL_PROFILE
        device type      : GPU
        maxThreadN       : 256
        threadDimN       : 3
        threadDim        : (256,256,256)
        memBits          : 32
        globalMemSize MiB: 3072
        maxAllocSize  MiB: 2880
        mallocAllignment : 256
        cacheLineBytes   : 64
        available        : YES
        ecc support      : NO
        deviceClockMHz   : 1100
        computeUnits     : 44
    AMD FX(tm)-8320 Eight-Core Processor          
        AuthenticAMD
        OpenCL 1.2 AMD-APP (2004.6)
        2004.6 (sse2,avx,fma4)
        FULL_PROFILE
        device type      : CPU
        maxThreadN       : 1024
        threadDimN       : 3
        threadDim        : (1024,1024,1024)
        memBits          : 32
        globalMemSize MiB: 2048
        maxAllocSize  MiB: 1024
        mallocAllignment : 128
        cacheLineBytes   : 64
        available        : YES
        ecc support      : NO
        deviceClockMHz   : 4816
        computeUnits     : 8
=============================
Suitable platforms count: 1
AMD Accelerated Parallel Processing (OpenCL 2.0 AMD-APP (2004.6))
    Hawaii
 
It appears that only 3GB of GPU memory are available to OpenCL programs on your board. This is a common issue on AMD boards. The device is running at 1100 MHz GPU clock.

It is possible that in the previous test run some of the GPU memory was unavailable due to being used by other programs, or because of some leaked memory.

Perhaps you should reset your computer and then try to run GpuMemTest again to see whether it works at *stock* GPU speed / 1500 MHz memory. Then you should try 3DMark at the same frequencies.

But anyway, GpuMemTest will be unable to test the entire memory of your GPU.
 
Ok, so, from now on, I'm recommending not to use GpuMemTest for overclocking memory on AMD GPUs.
 
this is sweet thanks you should keep up dev on it.
 
Well, generally speaking, I would like to keep the source code of this program for myself.

But, if you are interested in some specific part of code, I guess that I could post some snippets.
 
@Kevin C

Doesn't seem to support GPUs with more than 4GB of VRAM. :(

Are updates planned?
 
Back
Top