BTRFS as default install FS?

Not sure this is where to ask, so apologies if it's not here.

Is BTRFS always the default FS for Garuda, regardless of where it is to be installed?

I ask, because according to:

[Samsung 870 QVO SSD Performance On Ubuntu Linux Review - Phoronix](https://Phoronix QVO 870 tests)

BTRFS, at least on this SATA SSD, is pretty poor.

I just bought a 4TB model and did a quick benchmark with KDiskMark to compare BTRFS and Ext4 on it (fresh formatted partitions), and the difference is quite significant in places:

                    KDiskMark (3.1.2): https://github.com/JonMagon/KDiskMark
                Flexible I/O Tester (fio-3.33): https://github.com/axboe/fio

  • MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
  • KB = 1000 bytes, KiB = 1024 bytes

BTRFS
[Read]
Sequential 1 MiB (Q= 8, T= 1): 553.046 MB/s [ 540.1 IOPS] < 14765.52 us>
Sequential 1 MiB (Q= 1, T= 1): 378.640 MB/s [ 369.8 IOPS] < 2693.37 us>
Random 4 KiB (Q= 32, T= 1): 311.545 MB/s [ 77886.4 IOPS] < 412.92 us>
Random 4 KiB (Q= 1, T= 1): 10.129 MB/s [ 2532.4 IOPS] < 389.83 us>

[Write]
Sequential 1 MiB (Q= 8, T= 1): 512.920 MB/s [ 500.9 IOPS] < 14696.91 us>
Sequential 1 MiB (Q= 1, T= 1): 271.855 MB/s [ 265.5 IOPS] < 2582.10 us>
Random 4 KiB (Q= 32, T= 1): 158.610 MB/s [ 39652.5 IOPS] < 682.26 us>
Random 4 KiB (Q= 1, T= 1): 33.487 MB/s [ 8371.9 IOPS] < 80.16 us>

Ext4
[Read]
Sequential 1 MiB (Q= 8, T= 1): 549.381 MB/s [ 536.5 IOPS] < 14862.06 us>
Sequential 1 MiB (Q= 1, T= 1): 473.897 MB/s [ 462.8 IOPS] < 2151.70 us>
Random 4 KiB (Q= 32, T= 1): 352.906 MB/s [ 88226.7 IOPS] < 363.03 us>
Random 4 KiB (Q= 1, T= 1): 39.252 MB/s [ 9813.0 IOPS] < 100.66 us>

[Write]
Sequential 1 MiB (Q= 8, T= 1): 512.918 MB/s [ 500.9 IOPS] < 14804.80 us>
Sequential 1 MiB (Q= 1, T= 1): 301.143 MB/s [ 294.1 IOPS] < 2316.54 us>
Random 4 KiB (Q= 32, T= 1): 329.021 MB/s [ 82255.3 IOPS] < 386.49 us>
Random 4 KiB (Q= 1, T= 1): 58.388 MB/s [ 14597.1 IOPS] < 62.21 us>

Profile: Default
Test: 1 GiB (x3) [Measure: 5 sec / Interval: 5 sec]
Date: 2022-11-22 19:21:23
OS: garuda unknown [linux 6.0.9-zen1-1-zen]

I'm just wondering why there seems to be big differences, whether it is due to it being a SATA SSD, or the tech used in the drive?

Yes.
BTRFS is a modern, Copy-on-Write (CoW) filesystem for Linux, aimed at implementing advanced features while also focusing on fault tolerance, repair and easy administration. We use automatic snapshots out of the box.

6 Likes

Btrfs was not developed to be faster than ext4. Its development is focused on its features and stability.

The 500+ MB/s read/write speeds you posted are blazing fast for an SSD. An SSD cannot go much faster over SATA, no matter the filesystem or hardware.

If you are concerned about some of the slower results, before you draw any conclusions I would read more about the significance of those benchmarks and consider if they will realistically apply to your use case in a meaningful way. Most users will not notice the speed differences that benchmarking software is able to detect, even during a sustained write-intensive workload.

7 Likes

I am not a fan (yet) of BTRFS and here is a post on what I do to still get the lovely offerings of Garuda and yet use the FS and backup options of choice. Caveat, this is unsupported by Garuda...you have been warned.

4 Likes

Above a certain speed on SSD's rather SATA or M.2 you are not going to see the speed difference. The human eye just doesn't notice it. BTRFS on today's SSD's has no discernible performance lag over EXT4 regardless of what the benchmarks say.

3 Likes

:question:

Are you watching your data transfer bit by bit?

There are certainly data intensive applications where disk read/write speeds can impact user experience. The OP needs to consider his own use case to determine if that matters to them or not.

3 Likes

@RodneyCK is like

6 Likes

You see, I hear you say that, but :thinking: ext4 sure seems snappier under both my PC and laptop. Plus, and my memory could be a little wonky, but doesn't BTRFS cause fragmentation, which is why there is an auto-de-fragmentation thingy hooked up to a 'Illudium Q-36 explosive space modulator' (~Marven The Martian, btw) involved in keeping BTRFS "inline?"

My other issue is that damn Snapper backup tool. My gawd, could someone make that easier...like Timeshift?? I think it came from IKEA. :laughing:

2 Likes

I mean, it is pretty simple from my perspective.

However, if you prefer timeshift, there is nothing stopping you from using that instead.

I thought you couldn't use Timeshift with BTRFS, or is that something they told us in the beginning like, don't eat apples with razor blades in them?

I swear I remember old posts saying Snapper was the only option.

No, you can. It used to be the default but it is still an option. You can simply install timeshift-support. That should replace Snapper with Timeshift.

We switched to Snapper because it offers many additional features and properly implements read only snapshots.

3 Likes

Gotcha, that is good to know. Thanks @dalto !!

Unfortunately BTRFS is the "dark side" almost anywhere, excluding Garuda.

2 Likes

Guys, this wasn't some kind of complaint, simply curiosity. I'm a forever Linux n00b, gamer, and like to chat, and learn about stuff. Wikis and FAQ's don't give you other people's views, or reasoning behind the choices that go into sculpting a distro.

I was simply wondering if Garuda (or any other distro?), selects a different FS, depending on the medium it is going to be installed to. (HDD, SSHD, SATA SSD, M2 SSD, Flash SD etc.), and why the results were so different.

The laptop this is on uses the default BTRFS on the boot m.2 PCIE3 drive, and i'm happy with it, and with the Snapper system. But as I bought a big SATA SSD to replace an SSHD and HDD, I looked up filesystems for SSD's and did a couple of tests. And given that Garuda is Performance Focussed, I thought i'd ask. :slight_smile:

Mostly ISO files, VM Images, and large games, so sustained throughput for that drive is more important than response time for me.

Shrink root partition, create new ext4 partition and put your stuff there. Get BTRFS snapshotting and ext4 throughput at the same time, profit.

FYI, I realized the default image path for libvirt (/var/lib/libvirt/images) was being snapshotted, you may change that to a non-snapshotted directory for more disk space.

2 Likes

7 posts were merged into an existing topic: Snapper problems

Yep, I store my VM images on a data partition, same with Steam content,and any other big stuff I can keep off the root partition. I'm learning lol

BTRFS seems very divisive when you read about it in different places online. Still, unless enough people use new tech, things won't progress. I like living on the edge. Makes me feel like a hero :smiley:

2 Likes