Greetings,
I'm looking for different options of setting up my home server, and have 2 best options so far, Primo cache for Windows option, and OpenZFS for Linux option. When it comes to speed, looks like its all about cache. I came across this post discussing the use of VRAM on board of graphic cards for RAM disk: http://www.tomshardware.co.uk/answers/i ... #r13082155. Because it is indeed x10-20 times faster than RAM, I think it should be seriously considered as an option. Would it be possible to develop dedicated AMD/nVidia drivers for GPU to fully utilize its memory for caching purposes, and integrate this into Primo Cache as an option of using VRAM as level1 cache? Many outdated video cards have very fast memory on board, 2-3Gb in most cases, why not use it?
Feature proposal: allocating level1 cache in VRAM
Re: Feature proposal: allocating level1 cache in VRAM
Thanks for the suggestion!
This will be a very complicated task and it also needs to test many graphic cards, while the output is limited. I don't think our company will approve this task...
This will be a very complicated task and it also needs to test many graphic cards, while the output is limited. I don't think our company will approve this task...
Re: Feature proposal: allocating level1 cache in VRAM
I understand. It might make sense to support only selected models for server version, but it could make a big difference in speed.
Re: Feature proposal: allocating level1 cache in VRAM
Might be possible using the driver's API to do just Nvidia and ATI, mainstream type cards for enthusiasts (which are the ones with the most vRAM in them anyway). That way you only have to maintain compatibility with the driver(s), and not individual cards.
Re: Feature proposal: allocating level1 cache in VRAM
VRAM wouldn't be very practical as a disk cache. While VRAM itself is very fast then it's still always connected to the rest of the system via a slow PCIe connection. This interconnect is much slower than system RAM at just 16GB/sec for PCIe v3.0.
Conversely, modern DDR4-2666 has a bandwidth of 43GB/sec and old DDR3-1600 has a bandwidth of 26GB/sec.
Conversely, modern DDR4-2666 has a bandwidth of 43GB/sec and old DDR3-1600 has a bandwidth of 26GB/sec.
Re: Feature proposal: allocating level1 cache in VRAM
Good point. No sense to use VRAM then, until PCIe ports will have a lot higher bandwidth.Hodor wrote:VRAM wouldn't be very practical as a disk cache. While VRAM itself is very fast then it's still always connected to the rest of the system via a slow PCIe connection. This interconnect is much slower than system RAM at just 16GB/sec for PCIe v3.0.
Conversely, modern DDR4-2666 has a bandwidth of 43GB/sec and old DDR3-1600 has a bandwidth of 26GB/sec.
Re: Feature proposal: allocating level1 cache in VRAM
However, even at that speed it is still faster than a SSD as a L2 cache. And if you can't add more RAM to increase the L1 size, it would be good to have as an in-between cache (a L1.1 cache?). Slower than system RAM, faster than a drive.
Re: Feature proposal: allocating level1 cache in VRAM
Hi,
maybe using OpenCL ? all recent video cards supports it, or CUDA for nvidia's.
maybe using OpenCL ? all recent video cards supports it, or CUDA for nvidia's.
Re: Feature proposal: allocating level1 cache in VRAM
I don't see an useful scenario for this. Nowaday (affordable) graphic cards are equipped with 4-8GB memory. Let's assume you could use 7GB even with 48GB/s. Which calculation task other than simple copy could an cpu core do to these 7GB data?
You will just move to another bottleneck for ... longer bars in a benchmark?
As I said, I don' get what you try to achieve, please explain more detailed.
There are good reasons for the fast memory connection in graphic cards. Their gpu can make use of by massive parallel calculation, not really an strong point for cpu processing.
You will just move to another bottleneck for ... longer bars in a benchmark?
As I said, I don' get what you try to achieve, please explain more detailed.
There are good reasons for the fast memory connection in graphic cards. Their gpu can make use of by massive parallel calculation, not really an strong point for cpu processing.