Jump to content

Hello to anyone who picks up! 

 

So, just to get down to it, I have a home NAS that I have set up, running on Windows 10 as a shared drive, and my work PC connecting directly to it via a Mellanox ConnectX-2 10gb Ethernet adapter. While I'm uploading larger files to it, I'm getting a max of 250Mbps, which is kinda garbage for larger files if I'm in a hurry, which I frequently am, so the waiting is getting excruciating. The NAS has 4 x 1.5TB drives running Raid 5. My question is whether or not adding a Larger capacity SSD running as a cache, or a set of Lower capacity ones running in raid 0, or whatever config, would help Transfer speeds. My understanding is that cache helps for loading the file locally, especially if you are doing so with the same file repetitively, but as for the ingesting of files directly, I'm not sure. I was hoping there would be some sort of way for the SSD(s) to act as a middle man. To where the files get loaded directly to the SSD at first, then get loaded afterwords to the hard drives, but beyond loading a bunch of scripts running in the back ground on a schedule, I'm not sure how to achieve this. I have heard of caching services such as PrimoCache, and I actually use it on my PC, but I'm not sure if this would achieve the desired effect, and considering I already have all of my Data saved on the Server, I don't want to risk losing some or all of it due to a tiering issue or whatever else. 

 

Again, any help is appreciated!

Thank you guys,

Johnathan

Link to comment
https://linustechtips.com/topic/1022431-windows-10-nas-ssd-caching/
Share on other sites

Link to post
Share on other sites

You might be able to use a scheduled robocopy task to do everything you need for a simple SSD cache, something like:

robocopy "source drive" "dest drive" /E /MOV

and if you want to clone the directory structure you could use

robocopy "source drive" "dest drive" /E /XF *

Then all you would need to do is move files on to the SSD where you want them to appear on the mass storage drive and they will be moved to the mass storage drive when the task runs, this assumes the file(s) you want to move are smaller than the SSD though.

¯\_(ツ)_/¯

 

 

Desktop:

Intel Core i7-11700K | Noctua NH-D15S chromax.black | ASUS ROG Strix Z590-E Gaming WiFi  | 32 GB G.SKILL TridentZ 3200 MHz | ASUS TUF Gaming RTX 3080 | 1TB Samsung 980 Pro M.2 PCIe 4.0 SSD | 2TB WD Blue M.2 SATA SSD | Seasonic Focus GX-850 Fractal Design Meshify C Windows 10 Pro

 

Laptop:

HP Omen 15 | AMD Ryzen 7 5800H | 16 GB 3200 MHz | Nvidia RTX 3060 | 1 TB WD Black PCIe 3.0 SSD | 512 GB Micron PCIe 3.0 SSD | Windows 11

Link to post
Share on other sites

13 minutes ago, BobVonBob said:

You might be able to use a scheduled robocopy task to do everything you need for a simple SSD cache, something like:


robocopy "source drive" "dest drive" /E /MOV

and if you want to clone the directory structure you could use


robocopy "source drive" "dest drive" /E /XF *

Then all you would need to do is move files on to the SSD where you want them to appear on the mass storage drive and they will be moved to the mass storage drive when the task runs, this assumes the file(s) you want to move are smaller than the SSD though.

Right, and that's what I thought about doing too. I could do that, and it may be possible to even mess around with symbiotic links and such to enable the speeds I'm looking for, but I was really hoping for a much more robust and... well frankly user friendly software suite. Plus, if I'm just using robo-coby, then doesn't that essentially restrict how much data I can put on the server's spinning disks by how large the SSD(s) are?

Link to post
Share on other sites

17 minutes ago, Thatruriddler said:

Right, and that's what I thought about doing too. I could do that, and it may be possible to even mess around with symbiotic links and such to enable the speeds I'm looking for, but I was really hoping for a much more robust and... well frankly user friendly software suite. Plus, if I'm just using robo-coby, then doesn't that essentially restrict how much data I can put on the server's spinning disks by how large the SSD(s) are?

Well if you're using Windows 10 then you could use Storage Spaces and setup the SSDs as Journal devices for write-back cache or use PowerShell to setup a tiered configuration between the SSDs and HDDs, though you need ReFS for it to work properly and MS removed the ability to make new partitions using that and made it exclusive to Windows 10 Workstation and Windows Server.

 

If you don't mind paying money then Primocache is a good option, https://www.romexsoftware.com/en-us/primo-cache/

Link to post
Share on other sites

1 minute ago, leadeater said:

Well if you're using Windows 10 then you could use Storage Spaces and setup the SSDs as Journal devices for write-back cache or use PowerShell to setup a tiered configuration between the SSDs and HDDs, though you need ReFS for it to work properly and MS removed the ability to make new partitions using that and made it exclusive to Windows 10 Workstation and Windows Server.

 

If you don't mind paying money then Primocache is a good option, https://www.romexsoftware.com/en-us/primo-cache/

That's awesome actually. I was thinking about using that, but I wasn't sure if it helps with the ingesting, then that's lovely. I guess I didn't have a good enough understanding of how the tiering works. 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×