Mixing SSD and spinning disks in pool?

I’ve been searching for information about how Rockstor and btrfs behave when I mix SSD disks and spinning disks (4 x SSD, 8 x HDD) in the same pool but have not yet found any definitive answers. Unfortunately, I can’t find any way to search this forum so it’s quite likely that there’s a thread on this topic already and if that’s the case feel free to point towards it.

What I can gather there is SSD optimization in btrfs but that seems to be directly related to how SSD behaves, and any discussion regarding caching is about manually enabling various versions of “external” caching that aren’t included in btrfs (as far as I can tell, I’m not an expert on Linux filesystems).

I’ve tried to monitor the activity on the SSD disks in the Rockstor dashboard but based on my limited tests it seems as if they’re treated as any other disk in the pool, which doesn’t seem like the most efficient way to use my SSD.

How should I go about if I want to use my SSD to increase throughput and IOPS?

@MainrtNr5 Welcome to the Rockstor community.

That is exactly correct, priority wise at least. Btrfs currently does a round robin on which drive to select given the pid of the process doing the access. But there is already the base capability to prioritise say faster drives over slower ones. But this capability is not yet fully developed. For a definitive state-of-play on this capability, which as come up a number of times before, see the linux-btrfs mailing list:


A search within that lists archives should result in a few instances of proposals for fleshing out this capability. It would certainly be a nice feature but from what I can tell it’s just not fully developed yet. But is entirely possible given the base capabilities already in place and I think there have been a few proof-of-concepts proposed for this very feature.

As for searching our forum, we have a long standing css/theme issue that has obscured our almost invisible search (magnifying glass) icon in the top right:


It’s fairly faint but is located to the left of your user icon in the top right.

Sorry about this, @Flox I believe has a fix for this lined up ready but as always it’s a matter of priorities and we have quite a lot to juggle working on the next Stable release. But all in good time and thanks for the prompt. It is in hand but those hands are a little full currently.

Currently the only option we have, which has yet to be tested on our new Rockstor 4 variant, is an ‘external’ solution such as you referenced. And in our case the write-up we have is for bcache:

But this was written for our now legacy CentOS base, where as we are now ‘Built on openSUSE’ for our release candidate phase Rockstor 4.

Hope that helps.


Hi Philip, and thanks for the welcome. (As a side note, I realized reading your greeting that I spelled my nick wrong, it’s supposed to be MartinNr5. Oh well.)

I’ve read the wiki on bcache but I’m a bit hesitant to add it to my system as there seem to be some pretty important caveats with doing so. That and the fact that I’m quite rusty when it comes to Linux. :slight_smile:

I’ll leave the SSDs in the pool as is for now and see how I go about it. I have yet to settle on Rockstor for my new NAS, but so far it’s my absolute favorite as I have a bunch of HDDs of different sizes that I would really love to use in the same pool.

Thanks for the quick reply, and for the info on the search bar, I managed to find it with a bit of searching. :slight_smile: