> Also, I presume that a SATA interface to store data in RAM might have better performance than the average SSD.
That totally depends on the silicon capabilities and still would be limited by the SATA. Sure, you would have a very low latency on a random IO, but anything with serious throughput (especially if the block size is small) would quickly saturate the bus. You can see it comparing SATA and NVMe drives from the same vendor and model range.
And a personal anecdote - couple of years ago I did played with a software RAM drive (guess I needed something with tons of IO on a moderate sized load?) and the performance was... not good. Sure, it was a software written by some enthusiast and probably wasn't optimized, but still.
Modern SSDs are around $100-150 per TB, so you would get a better size and performance just buying an NVMe drive, with something like M.2 to PCI-E adapter[1] if needed.
PS of course you can just buy an old server mobo and fill it out with your RAM sticks, make a software RAM drive and expose it over Ethernet with iSCSI or FCoE... but again that wouldn't be cheaper than $100-150 NVMe drive.
[0] https://en.wikipedia.org/wiki/RAM_drive, under "Dedicated hardware RAM drives"
I'd use something like this for heavy disk I/O over an SSD any day. Plus, it lets you use memory that would otherwise likely go to waste.
However, those were expensive back then and haven't gotten any cheaper, nor are there newer devices that I know about that'd take newer DIMM types. That'd be nice, though.
The only potential advantage I see would be read and write speed, but aren't SSD's already fast enough to saturate the SATA bus ? Isn't that why NVME offers better performance than SATA ?
What is clear is that for equivalent capacity DRAM is much more expensive than an SSD.
My guess is that if no one is making a product like what you are asking about it's because it offers no real advantage over the much cheaper solution of adding another SSD.
> how does it fare with regards to performance?
What's your use case?
https://www.newegg.com/amp/gigabyte-gc-ramdisk-others/p/N82E...
The maximum bandwidth of a SATA interface is 6Gb/sec.
For comparison, old PC-1600 DDR RAM has a data rate of 1.6GB/sec...or >10Gb/sec because 1Gb != 1GB.
Over SATA, static RAM is good enough to saturate the interface and is non-volatile and cheaper.
Good luck.
The best thing to do would just make a RAMDrive, but x86 systems are surprisingly craptastic with real world memory bandwidth and latency and I haven't found this solution to be mind-blowing.
On ARM it might be a different story.