Announcement

Collapse
No announcement yet.

OSDMount feature request, RAM drive sync to file on dismount

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • OSDMount feature request, RAM drive sync to file on dismount

    I would like to have a RAM drive, backed by file, when RAM drive content stored to file on dismount. something like

    Code:
    OSFMount.com -a -t vm -f C:\ram2.img -o sync -m D:
    copy C:\tempfile D:\
    copy C:\permfile D:\
    del D:\tempfile
    OSFMount.com -d -m D:
    OSFMount.com -a -t vm -f C:\ram2.img -o sync -m D:
    dir D:\​
    Directory of D:\
    24/11/2025 14:50 2 permfile​
    In above scenario drive C: used only during OSFMount.com -a and OSFMount.com -d

    Ideally content would be synced on reboot too
    Code:
    OSFMount.com -a -t vm -f C:\ram2.img -o sync -m D:
    copy C:\permfile D:\
    reboot
    OSFMount.com -a -t vm -f C:\ram2.img -o sync -m D:
    dir D:\​
    Directory of D:\
    24/11/2025 14:50 2 permfile​
    Of course in case of BSOD or power loss RAM drive content would be lost, and if BSOD or power loss will happen during sync of RAM to file - file could be corrupted, that's expected.

    Or maybe such functionality already exists and I just can't find it?

  • #2
    Before spending any time on this, a question.
    Modern NVME M2 drives are now very fast. In some scenarios the fastest M2 drives are around the same speed as the slower RAM sticks. So does your proposal make sense?
    Remembering of course that you A) loose a bunch of RAM to make the RAM disk B) the sync to and from a the RAM drive could be slow C) There is significant risk of data loss and D) SSDs can be much larger than a RAM drive (at the same hardware cost).

    Comment


    • #3
      I have couple of servers on vSphere with less than optimal hardware for my use cases: 1.5TB RAM and only 80 vCPUs - disks are remote, small (800GB per VM - but that may change in future) and IO performance is not great - and I cannot get anything else for a while, I'm running windows and linux vms with docker there connected to Jenkins - it is ok if vm will die, as they could be recreated easily - and don't have any important data there. To improve I/O, I'm using 1TB RAM drive on each machine for docker images, containers and volumes, on linux RAM drives supported natively and I could easily save/restore them with dd, and on windows I'm trying to use OSFMount with similar functionality. I can store RAM drive to image and increase it size from GUI, but not from command line - I thought maybe functionality exists and just not documented? But I should be able to figure out acceptable workflow even with current functionality.

      Another long shot question - any chance that OSFMount is NUMA aware ?

      Comment


      • #4
        There is no "sync" option like you have in your example.

        If your disk storage is slow and remote, the initial load of 1TB RAM disk might take several hours. Then several more hours to unmount it with a sync. Even the save to image option that is in the GUI does a full dump of the RAM disk. Where as in your case a differential update would be nicer (to only save the changes).

        Maybe, before dismount, you could mount the source image to a drive letter, but not as a RAM disk, then backup just the changed files with a xcopy differential copy.



        Comment


        • #5
          I already noticed that image save is painfully slow - for now I'm starting from empty disk and pre pulling most used docker images - images are huge and pull is slow too, but reboot is not happening often, so it should be acceptable in current form, thanks.

          Comment


          • #6
            Would seem like a lot less work just to a M2 drive. Or install a PCIe card with a M2 drive.

            Comment

            Working...
            X