GpuZelenograd / memtest_vulkan

Vulkan compute tool for testing video memory stability
https://github.com/GpuZelenograd/memtest_vulkan/blob/main/Readme.md
zlib License
262 stars 12 forks source link

[Feature Request / Wishlist]: Read/write test between system RAM (or CPU cache) and VRAM #6

Open T-X opened 1 year ago

T-X commented 1 year ago

Hi,

I have an eGPU enclosure here which uses Thunderbolt 3 and it is connected to a Linux laptop with an AMD CPU + USB-C/USB4 port (40gbit/s). From the speeds I get in memtest_vulkan it seems to me that it performs read/write tests only within the GPU itself. memtest_vulkan reports 187GB/s to me, way more than the 40gbit/s the USB4 port allows.

It would be nice if memtest_vulkan had an option to measure the read/write throughput between VRAM/GPU and RAM/CPU, so that I could use it to measure the real throughput of the TB3/USB4 connection. Currently on Linux it seems a bit difficult to measure this as is (at least usbtop / usbmon don't seem to be able to capture Thunderbolt traffic).

galkinvv commented 1 year ago

Hi, you are right - the testing is performed in GPU memory, since the initial idea was to create the memory stability testing utility, not the performance benchmark. The output of the speed in GB/s is more informational, it doesn't utilize the 100% memory bandwidth for some cards due to a lot of memory address computations that sometimes are capped by computational performance.

However, there are some preliminary plans to add the benchmark mode in the future and adding the estimation of the bus performance seems to be interesting idea, thanks!