Answer the question
In order to leave comments, you need to log in
How to merge RAM?
Good mood to all.
Of course, my question may be quite strange, but in theory I read that it is possible, even on github (while it was real), that it is possible to combine the RAM of several / many computers into a cluster. That is, one device expands the RAM at the expense of other devices. In theory, everything is beautiful, but I can’t find software that can do this, so I was puzzled by all this not so long ago.
Thanks to those who have interesting thoughts.
Answer the question
In order to leave comments, you need to log in
In theory, it is possible, only throughput / delays are so-so.
As a rule, they combine special hardware platforms that have an architecture other than x86 with the ability to connect several platforms.
In software, you will run into the speed / delays of the transmission protocol, the fastest will be infiniband 56g, again, for this you need to buy infiniband cards / cables / switches. Ethernet 1/10g will be quite slow, I do not know what is the point of such memory sharing.
Easier/cheaper/more practical to sell excess hardware and buy pci-e ssd for swap
No, there is direct access to RAM over the network (RDMA) technology. But it allows you to "look" into the memory of another computer through a very fast network, or clone your own into someone else's or vice versa (that is, to make, roughly speaking, so that two or more computers always have the same data in memory), and not "expand" your own at the expense of someone else's.
In your task, the most adequate input is to add more slats and / or replace the existing ones with larger slats. Less adequate methods are ZRAM (data compression in RAM) and/or using a fast SSD as a cache.
Purely in theory, you can do this by making ram disks on each wheelbarrow, on the main wheelbarrow, collect these disks into one partition and put swap on it.
And again, in theory, it may even turn out not catastrophically (this means that even so the losses will be significant) to sink in speed. Figuratively speaking, if swap on a normal screw will give out 10ms of delay, then the delay in LAN will be 1 ms. But there will probably be many pitfalls here, and in total the delay will still be much higher than 1 ms.
You can also trim zram and, in general, programmatically increase the existing amount of RAM a little.
InfiniBand has a trick with access to the ram of a remote machine, but you have to rewrite your software to make it work.
You can still throw a block device through nbd server\client, but whether this will work with /dev/shm is a big question.
In short, there are 3 ways and each implies a jamb:
1) If the RAM is still critical. Spending money on a good RAM, no crap.
2) If the percent is not particularly critical, but it is the volume and speeds above the swap that are important, then take server hardware with ddr2-3 RAM, they cost a penny now and you can grab a mother + percent + oz of 64 or even 96GB for 15-20 rubles . There are many pluses here, but it may turn out that the stone is not enough.
3) Collective farms and fumbling ram disks on LAN, sculpting one volume through the network and throwing swap on it. A lot of red-eyedness, of the costs, only good gigabit network cards, at least a minimum, but preferably 10.
4) A good ssd or a raid of them, swap on it. Optimal in terms of volume, not bad, at least faster than LANs, not very expensive.
lightweight OS ram disk and sharing of this ram disk. On this ram disk is the paging file of the remote PC.
It looks stupid and probably won't work too well.
Though if for the purpose to revive what thread 486 will go.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question