KDiskMark question and benchmarking ZFS

I have installed kdiskmark on NixOS via Home Manager (as a module). It works, but the drop down menu for file locations is a small set limited to my boot partitions (FAT) and USB devices. My ZFS is not available.

I also tried as a global package rather than HM, but this does not make a difference.

I had expected to be able to choose a folder (and hence ZFS) as I thought this was behaviour I had seen using Linux Mint. Are my expectations correct? Or am I confusing it with another app?

I do not see a config file, or any settings that may affect this, so I am at a loss…

I’m looking for a easy to use, quick performance comparison with some easy defaults (I don’t want to keep hand-crafting CLI commands that I may forget or mess up)and I have been used to crystaldiskmark previously from Windows and I thought kdiskmark would fit the bill.

Any comments and suggestions welcomed!

1 Like

@Damage hey, I’ve faced the same issues… were you able to fix it? thanks

No, unfortunately.

I had some other apps do similar - but not the same. Ensuring polkit was enabled seem to help a bit,but not diskmark.

Not sure where to start…

I took a really quick look. In mainwindow.cpp:


    foreach (const QStorageInfo &volume, QStorageInfo::mountedVolumes()) {
        if (volume.isValid() && volume.isReady() && !volume.isReadOnly()) {
            if (volume.device().indexOf("/dev") != -1) {
                Global::Storage storage {
                    .path = volume.rootPath(),
                    .bytesTotal = volume.bytesTotal(),
                    .bytesOccupied = volume.bytesTotal() - volume.bytesFree(),
                    .formatedSize = formatSize(storage.bytesOccupied, storage.bytesTotal),
                };
                addItemToStoragesList(storage);
            }
        }
    }

So it’s ignoring filesystems that aren’t mounted from a device, and (looking a bit further) in general has a bunch of assumptions relying on the idea that a block device holds a filesytem on a mountpoint. It probably uses that assumption when testing.

This seems like something to request upstream; the repo seems active.