Giter Site home page Giter Site logo

jonmagon / kdiskmark Goto Github PK

View Code? Open in Web Editor NEW
961.0 14.0 42.0 2.43 MB

A simple open-source disk benchmark tool for Linux distros

License: GNU General Public License v3.0

C++ 96.45% CMake 3.55%
linux qt5 benchmarking ssd disk drive cpp crystaldiskmark polkit dbus

kdiskmark's Introduction

KDiskMark

License: GPL v3 GitHub (pre-)release Main

KDiskMark is an HDD and SSD benchmark tool with a very friendly graphical user interface. KDiskMark with its presets and powerful GUI calls Flexible I/O Tester and handles the output to provide an easy to view and interpret comprehensive benchmark result. The application is written in C++ with Qt and doesn't have any KDE dependencies.

Features

  • Configurable block size, queues, and threads count for each test
  • Many languages support
  • Report generation

Report Example

                        KDiskMark (3.0.0): https://github.com/JonMagon/KDiskMark
                    Flexible I/O Tester (fio-3.30): 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

[Read]
Sequential   1 MiB (Q=  8, T= 1):   508.897 MB/s [    497.0 IOPS] < 13840.05 us>
Sequential   1 MiB (Q=  1, T= 1):   438.278 MB/s [    428.0 IOPS] <  2280.14 us>
    Random   4 KiB (Q= 32, T= 1):   354.657 MB/s [  88664.6 IOPS] <   352.37 us>
    Random   4 KiB (Q=  1, T= 1):    44.166 MB/s [  11041.6 IOPS] <    88.48 us>

[Write]
Sequential   1 MiB (Q=  8, T= 1):   460.312 MB/s [    449.5 IOPS] < 15153.11 us>
Sequential   1 MiB (Q=  1, T= 1):   333.085 MB/s [    325.3 IOPS] <  2349.82 us>
    Random   4 KiB (Q= 32, T= 1):   315.170 MB/s [  78792.5 IOPS] <   383.86 us>
    Random   4 KiB (Q=  1, T= 1):    91.040 MB/s [  22760.3 IOPS] <    39.80 us>

Profile: Default
   Test: 1 GiB (x5) [Measure: 5 sec / Interval: 5 sec]
   Date: 2022-08-24 16:10:33
     OS: opensuse-tumbleweed 20220821 [linux 5.19.2-1-default]

Dependencies

Required

External libraries

Installation

Binaries are available on the Releases page.

Install from the Snap Store

Get it from the Snap Store

sudo snap install kdiskmark
sudo snap connect kdiskmark:removable-media # external storages

Install from the Flathub repository

flatpak install flathub io.github.jonmagon.kdiskmark

Ubuntu based distros

sudo add-apt-repository ppa:jonmagon/kdiskmark
sudo apt update
sudo apt install kdiskmark

Arch based distros

KDiskMark is included in the official extra repo. You can install it like any other package:

sudo pacman -Syu kdiskmark

Development version can be installed from AUR kdiskmark-git package.

git clone https://aur.archlinux.org/kdiskmark-git.git
cd kdiskmark-git
makepkg -si

Fedora

KDiskMark is included in the official Fedora repo. You can install it like any other package:

sudo dnf install kdiskmark

openSUSE Tumbleweed

sudo zypper install kdiskmark

Building

Building a package using CPack

You can build KDiskMark by using the following commands:

mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=Release ..
cpack -G DEB # Or RPM, ZIP etc.

Localization Crowdin

To help with localization you can use Crowdin or translate files in data/translations with Qt Linguist directly. To add a new language, copy data/translations/kdiskmark.ts to data/translations/kdiskmark_<ISO 639-1 language code>_<ISO 3166-1 alpha-2 language code>.ts, translate it, then add the file to the TS_FILES variable in CMakeLists.txt, and create a pull request. It is also possible to add localized Comment and Keywords sections into data/kdiskmark.desktop and message for PolicyKit authorization into data/dev.jonmagon.kdiskmark.helper.policy.

Languages currently available:

  • Chinese (Simplified)
  • Czech
  • Dutch
  • English (default)
  • French
  • German
  • Hindi
  • Hungarian
  • Italian
  • Japanese
  • Polish
  • Portuguese (Brazilian)
  • Russian
  • Slovak
  • Spanish (Mexico)
  • Swedish
  • Turkish
  • Ukrainian

TODO

  • Text-based user interface
  • Performance profiles (mix, peak, real-world)

Special Thanks

Thanks to the package maintainers, translators, and all users for supporting the project.

Credits

Application Icon
Copyright (c) https://www.iconfinder.com/baitisstudio

FlagKit
https://github.com/madebybowtie/FlagKit

If you have any ideas, critics, suggestions or whatever you want to call it, please open an issue.

kdiskmark's People

Contributors

agno94 avatar buckmelanoma avatar chrisandreae avatar codacy-badger avatar dsm avatar eson57 avatar fabianski7 avatar farseerfc avatar frankebel avatar jonmagon avatar mahtiankka avatar p-bo avatar taotieren avatar tim77 avatar utuhiro78 avatar vibe-hu avatar vistaus avatar wladymyr1996 avatar wmramadan avatar wojtasjd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kdiskmark's Issues

Dependency error

Hi there

I'm trying to run KDiskMark 2.3.0 on a CentOS 7 server but I keep getting this error:

[root@vultr ~]# rpm -i kdiskmark-2.3.0-1.x86_64.rpm
error: Failed dependencies:
        libstdc++.so.6(CXXABI_1.3.9)(64bit) is needed by kdiskmark-2.3.0-1.x86_64

But libstdc++ is of course there:
/usr/lib64/libstdc++.so.6

Any ideas how I can fix this issue?
Thanks.

Does not autodetect encrypted devices

  • Linux-distro: Ubuntu 18.04.5 LTS
  • Desktop Environment (KDE/GNOME etc.): GNOME
  • Qt Version: 5.9.5
  • KDiskMark Version: source (7321b05)
  • FIO Version: fio-3.21-41-gf0ed

Description:

Mounted encrypted volumes do not appear in the device-selection drop-down.
All my mounted unencrypted partitions appear in the drop-down as expected (these all appear under /dev/sd__).
None of my mounted encrypted partitions appear in the drop-down (/dev/dm-_).

Steps To Reproduce:

  1. Mount a encrypted filesystem.
  2. Launch KDiskMark.
  3. Notice the filesystem is not present in the device selection.

M1 support

Would be nice to have arm64 Debian package included in releases.
Or at least have an instruction set for building this from sources.
Tried snap and cmake and both failed

PolKit dialog pops up halfway through and fails process

  • Linux-distro (kernel version): Arch Linux (Linux 5.15.6-zen2-1-zen)
  • Desktop Environment (KDE/GNOME etc.): KDE (Plasma 5.23.4, Frameworks 5.88.0, X11)
  • Qt Version: 5.15.2
  • KDiskMark Version: 2.2.1
  • FIO Version: fio-3.28

Description:

After starting benchmark KDiskMarks shows PolKit prompt to clear pagecache. After I enter password it starts benchmarking process until, at some point, PolKit prompt appears again.

If I enter password again it won't continue operation but fails with FIO-related error which I didn't write down but it sounds rather generic.

Steps To Reproduce:

  1. Start Benchmark
  2. Wait

Random Reads getting stuck and not completing passes. System unresponsive.

  • Linux-distro (kernel version): 5.9.16-1-MANJARO
  • Desktop Environment (KDE/GNOME etc.): KDE Plasma 5.21.2
  • Qt Version: 5.15.2
  • KDiskMark Version: 2.2.0
  • FIO Version: fio-3.25

Description:

RND4KQ32T16 and RND4KQ1T1 checks never finish a single pass. Always stuck at pass 0/5. Iotop shows the fio processes running and disk reads 90-99% IO and Total Disk Read around 1500-1600 K/s. System gets very unresponsive during the time.
I have let it run for around 15min but it still stays at Random Read pass 0/5.

Steps To Reproduce:

1 Launch KDiskMark 2. Start RND4KQ32T16 or RND4KQ1T1

Cmake deprecation warning

  • Linux-distro: Fedora 33+
  • Desktop Environment (KDE/GNOME etc.): GNOME
  • Qt Version: 5.15.2
  • KDiskMark Version: 2.2.0
  • FIO Version: fio-3.21

Description:

Won't compile on Fedora 33 and above.

CMake Deprecation Warning at /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:339 (message):
  LIB_INSTALL_DIR is deprecated, use KDE_INSTALL_LIBDIR instead.
Call Stack (most recent call first):
  /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:436 (_define_relative)
  CMakeLists.txt:47 (include)
-- Installing in the same prefix as Qt, adopting their path scheme.
CMake Deprecation Warning at /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:339 (message):
  INCLUDE_INSTALL_DIR is deprecated, use KDE_INSTALL_INCLUDEDIR instead.
Call Stack (most recent call first):
  /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:394 (_define_relative)
  /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:512 (_define_absolute)
  CMakeLists.txt:47 (include)
CMake Deprecation Warning at /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:339 (message):
  SHARE_INSTALL_PREFIX is deprecated, use KDE_INSTALL_DATAROOTDIR instead.
Call Stack (most recent call first):
  /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:394 (_define_relative)
  /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:533 (_define_absolute)
  CMakeLists.txt:47 (include)
CMake Deprecation Warning at /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:339 (message):
  SYSCONF_INSTALL_DIR is deprecated, use KDE_INSTALL_SYSCONFDIR instead.
Call Stack (most recent call first):
  /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:394 (_define_relative)
  /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:650 (_define_absolute)
  CMakeLists.txt:47 (include)
CMake Warning at /usr/share/ECM/kde-modules/KDEInstallDirs.cmake:671 (message):
  KDE_INSTALL_BINDIR, KDE_INSTALL_LIBDIR and KDE_INSTALL_INCLUDEDIR should
  either all be absolute paths or all be relative paths.
Call Stack (most recent call first):
  CMakeLists.txt:47 (include)
CMake Error at CMakeLists.txt:49 (find_package):
  Could not find a package configuration file provided by "KF5Auth" with any
  of the following names:
    KF5AuthConfig.cmake
    kf5auth-config.cmake
  Add the installation prefix of "KF5Auth" to CMAKE_PREFIX_PATH or set
  "KF5Auth_DIR" to a directory containing one of the above files.  If
  "KF5Auth" provides a separate development package or SDK, be sure it has
  been installed.
-- Configuring incomplete, errors occurred!

Permission denied for USB-Drive by snap

Ubuntu 22.04
kdiskmark 2.3.0

$ snap connections kdiskmark
Interface                             Plug                             Slot                                                  Notes
content[gtk-3-themes]                 kdiskmark:gtk-3-themes           gtk-common-themes:gtk-3-themes                        -
content[icon-themes]                  kdiskmark:icon-themes            gtk-common-themes:icon-themes                         -
content[kde-frameworks-5-core18-all]  kdiskmark:kde-frameworks-5-plug  kde-frameworks-5-core18:kde-frameworks-5-core18-slot  -
content[sound-themes]                 kdiskmark:sound-themes           gtk-common-themes:sound-themes                        -
desktop                               kdiskmark:desktop                :desktop                                              -
desktop-legacy                        kdiskmark:desktop-legacy         :desktop-legacy                                       -
gsettings                             kdiskmark:gsettings              :gsettings                                            -
hardware-observe                      kdiskmark:hardware-observe       :hardware-observe                                     -
home                                  kdiskmark:home                   :home                                                 -
mount-observe                         kdiskmark:mount-observe          :mount-observe                                        -
opengl                                kdiskmark:opengl                 :opengl                                               -
removable-media                       kdiskmark:removable-media        -                                                     -
udisks2                               kdiskmark:udisks2                -                                                     -
wayland                               kdiskmark:wayland                :wayland                                              -
x11                                   kdiskmark:x11                    :x11                                                  -

Select USB-Drive (/var/lib/snapd/hostfs/media/$USERNAME/9C33-6BBD) -> Run -> Permission denied

Doesn't work with /home

  • Linux-distro (kernel version): Mint 20.2 5.15.9-051509-generic #202112161532 SMP
  • Desktop Environment (KDE/GNOME etc.): Cinnamon
  • Qt Version:
  • KDiskMark Version: 2.3.0
  • FIO Version: fio-3.16

Description:

Choosing any directory in /home doesn't allow to perform tests

Steps To Reproduce:

Select directory in /home/$user

Wrong detected available disk space

  • Linux-distro: Manjaro
  • Desktop Environment (KDE/GNOME etc.): KDE
  • Qt Version: 5.15.1
  • KDiskMark Version: 2.0.0
  • FIO Version: fio-3.23

Description:

Wrong detected available disk space
image
image

Steps To Reproduce:

This issue seems to happen on all my disks

KDiskMark3 second instance - D-Bus interface is already in use.

  • Linux-distro (kernel version): Ubuntu 22.04 (5.15.0-25-generic) x86-64
  • Desktop Environment (KDE/GNOME etc.): GNOME 42.0 (X11)
  • Qt Version: 5.15.3
  • KDiskMark Version: 3.0.0
  • FIO Version: fio-3.28

Description:

Unable to run KDiskMark 3.0.0 multiple instances.

Steps To Reproduce:

Install KDiskMark 3.0.0, launch it and then launch another instance

Screenshot from 2022-08-24 16-47-18
.

Wrong read speed result for Samsung SSD 970 EVO Plus

  • Linux-distro: Fedora 33
  • Desktop Environment (KDE/GNOME etc.): KDE
  • Qt Version: 5.15.2
  • KDiskMark Version: 2.2.0
  • FIO Version: fio-3.21

Description:

Strange speed result for Samsung SSD 970 EVO Plus (1TB and others).
By datasheet and in gnome-disk-utility I have ~3500MB/s sequential read but kdiskmark give me only ~1500MB/s.
And write speed ~2900MB/s. So read speed seems not relevant.

Steps To Reproduce:

Run test.

Can you help solve this bug?

Report disk model under FreeBSD

I've added your program to FreeBSD ports and had to patch it a bit so it reports disk model correctly; would be nice if you could merge the patch, it's rather small and simple. Of course, I've forgotten to close(fd) before returning from the function. :-(

KDiskMark does not consider all writable mount points

  • Linux-distro: Ubuntu 20.04
  • Desktop Environment (KDE/GNOME etc.): (Vanilla) GNOME
  • Qt Version: 5.12.8
  • KDiskMark Version: 1.6.2
  • FIO Version: fio-3.16-1

Description:

The combobox with the drives has several of them greyed out, despite them being mounted readwrite:

  • / (ext4)
  • /boot/efi (FAT32)
  • /data (btrfs)

... whereas the following items are not greyed out:

  • home folder (but won't work due to ecryptfs)
  • /mnt/DATA an NTFS partition readwrite-mounted for the current user

The issue is that while the root of /data - to give one example - isn't writable, some subfolders there are. So it should be viable somehow to benchmark that drive (e.g. by selecting a path explicitly?!).

Steps To Reproduce:

Not sure at this point how you could reproduce it. I'll amend this report after I manage to test this on other systems.

The HDD test takes a very long time.

The HDD test has been going on for a very long time, for more than 6 hours and it is not known when it will end.
At the same time, the same SSD tests take no more than half an hour.
Is this how it should be?
wd1
wd2

Cannot add folder /home/some_user

Installed via snap on LinuxMint 20

sudo snap install kdiskmark                 
sudo snap connect kdiskmark:mount-observe
sudo snap connect kdiskmark:hardware-observe

Apparently KDiskMark (or snap itself) is buggy or has no access, as the select-folder-UI greys out the [open]-button, once any empty folder is selected. This is the case for all empty folders on my machine.

Note: All folders tested can be accessed by an unpriviledged user though.
image

Weirdly small UI

  • Linux-distro (kernel version): Arch Linux (Linux 5.15.6-zen2-1-zen)
  • Desktop Environment (KDE/GNOME etc.): KDE (Plasma 5.23.4, Frameworks 5.88.0, X11)
  • Qt Version: 5.15.2
  • KDiskMark Version: 2.2.1
  • FIO Version: fio-3.28

Description:

Everything in UI doesn't scale when font size gets bigger.
It's not an issue for most app on my system but KDiskMark by some reason looks ugly.

I have 2160p 16:9 monitor and DPI in settings is set to 144.

2021-12-06 12 34 05

2021-12-06 12 34 37

2021-12-06 12 34 47

DBus Backend error: service start org.jonmagon.kdiskmark failed: Launch helper exited with unknown return code 255

  • Linux-distro (kernel version): debian 10, 4.19.0-18-amd64
  • Desktop Environment (KDE/GNOME etc.): Xfce
  • Qt Version: 5.11.3+dfsg1-1+deb10u4 amd64
  • KDiskMark Version: 2.3.0 (built .deb from source)
  • FIO Version: fio-3.12-2 amd64

Description:

When attempting to run a benchmark a 'Benchmark Failed' window pops up with message: 'DBus Backend error: service start org.jonmagon.kdiskmark failed: Launch helper exited with unknown return code 255'

syslog:

Jan 26 06:58:58 one dbus-daemon[2060]: [system] Activating service name='org.jonmagon.kdiskmark' requested by ':1.381' (uid=0 pid=12315 comm="kdiskmark ") (using servicehelper)
Jan 26 06:58:58 one org.jonmagon.kdiskmark: QDBusArgument: read from a write-only object
Jan 26 06:58:58 one org.jonmagon.kdiskmark: QDBusArgument: read from a write-only object
Jan 26 06:58:58 one org.jonmagon.kdiskmark: QDBusArgument: read from a write-only object
Jan 26 06:58:58 one org.jonmagon.kdiskmark: Error registering helper DBus service "org.jonmagon.kdiskmark" "Connection ":1.409" is not allowed to own the service "org.jonmagon.kdiskmark" due to security policies in the configuration file"
Jan 26 06:58:58 one org.jonmagon.kdiskmark: Helper initialization failed
Jan 26 06:58:58 one dbus-daemon[2060]: [system] Activated service 'org.jonmagon.kdiskmark' failed: Launch helper exited with unknown return code 255
Jan 26 06:59:00 one dbus-daemon[2060]: [system] Activating service name='org.jonmagon.kdiskmark' requested by ':1.381' (uid=0 pid=12315 comm="kdiskmark ") (using servicehelper)
Jan 26 06:59:00 one org.jonmagon.kdiskmark: QDBusArgument: read from a write-only object
Jan 26 06:59:00 one org.jonmagon.kdiskmark: QDBusArgument: read from a write-only object
Jan 26 06:59:00 one org.jonmagon.kdiskmark: QDBusArgument: read from a write-only object
Jan 26 06:59:00 one org.jonmagon.kdiskmark: Error registering helper DBus service "org.jonmagon.kdiskmark" "Connection ":1.413" is not allowed to own the service "org.jonmagon.kdiskmark" due to security policies in the configuration file"
Jan 26 06:59:00 one org.jonmagon.kdiskmark: Helper initialization failed
Jan 26 06:59:00 one dbus-daemon[2060]: [system] Activated service 'org.jonmagon.kdiskmark' failed: Launch helper exited with unknown return code 255

Steps To Reproduce:

Launch GUI, attempt to run any benchmark.

Can't reproduce results with fio

  • Linux-distro (kernel version): Kubuntu 21.10, Linux 5.13.0-19-generic
  • Desktop Environment (KDE/GNOME etc.): KDE
  • Qt Version: 5.15.2
  • KDiskMark Version: 2.2.1
  • FIO Version: fio-3.25

Description:

I've performed the same test (random 4k Q1 T1) with KDiskMark and fio, and while write results are roughly the same, read results have 2.5-3x difference. What could be the reason?

USB drive #1:

KDiskMark
                    KDiskMark (2.2.1): https://github.com/JonMagon/KDiskMark
                Flexible I/O Tester (fio-3.25): 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

[Read]
Sequential 1 MiB (Q= 8, T= 1):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
Sequential 1 MiB (Q= 1, T= 1):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
    Random 4 KiB (Q=32, T=16):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
    Random 4 KiB (Q= 1, T= 1):     2.328 MB/s [    582.2 IOPS] <  1713.00 us>

[Write]
Sequential 1 MiB (Q= 8, T= 1):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
Sequential 1 MiB (Q= 1, T= 1):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
    Random 4 KiB (Q=32, T=16):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
    Random 4 KiB (Q= 1, T= 1):     3.768 MB/s [    942.1 IOPS] <    80.64 us>

Profile: Default
  Test: 128 MiB (x3) [Interval: 5 sec]
  Date: 2021-10-18 22:10:47
    OS: ubuntu 21.10 [linux 5.13.0-19-generic]
fio
> sudo fio --create_only=1 --size=128M --filename=.fio.tmp --name=read
> sudo sync
> sudo sysctl -q vm.drop_caches=3
> sudo fio --loops=3 --size=128M --filename=.fio.tmp --stonewall --ioengine=libaio --direct=1 --randrepeat=0 --refill_buffers --end_fsync=1 \
--name=4k-rand-read --bs=4k --iodepth=1 --numjobs=1 --rw=randread \
--name=4k-rand-write --bs=4k --iodepth=1 --numjobs=1 --rw=randwrite
4k-rand-read: (g=0): rw=randread, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=1
4k-rand-write: (g=1): rw=randwrite, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=1
fio-3.25
Starting 2 processes
Jobs: 1 (f=1): [_(1),F(1)][100.0%][eta 00m:00s]
4k-rand-read: (groupid=0, jobs=1): err= 0: pid=6031: Mon Oct 18 22:14:45 2021
  read: IOPS=1661, BW=6645KiB/s (6805kB/s)(384MiB/59172msec)
    slat (usec): min=16, max=229762, avg=594.72, stdev=1760.27
    clat (nsec): min=1094, max=190538, avg=3236.90, stdev=3347.34
    lat (usec): min=17, max=229780, avg=598.66, stdev=1761.72
    clat percentiles (nsec):
    |  1.00th=[  1144],  5.00th=[  1400], 10.00th=[  1544], 20.00th=[  1752],
    | 30.00th=[  1816], 40.00th=[  2096], 50.00th=[  2480], 60.00th=[  2992],
    | 70.00th=[  3344], 80.00th=[  3504], 90.00th=[  5536], 95.00th=[  8640],
    | 99.00th=[ 14144], 99.50th=[ 16512], 99.90th=[ 25472], 99.95th=[ 44800],
    | 99.99th=[117248]
  bw (  KiB/s): min= 1184, max=107030, per=99.75%, avg=6629.66, stdev=19932.66, samples=118
  iops        : min=  296, max=26757, avg=1657.16, stdev=4983.19, samples=118
  lat (usec)   : 2=37.39%, 4=44.99%, 10=15.04%, 20=2.41%, 50=0.12%
  lat (usec)   : 100=0.03%, 250=0.02%
  cpu          : usr=1.67%, sys=3.71%, ctx=98361, majf=0, minf=11
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
    submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    issued rwts: total=98304,0,0,0 short=0,0,0,0 dropped=0,0,0,0
    latency   : target=0, window=0, percentile=100.00%, depth=1
4k-rand-write: (groupid=1, jobs=1): err= 0: pid=6036: Mon Oct 18 22:14:45 2021
  write: IOPS=929, BW=3716KiB/s (3805kB/s)(384MiB/105810msec); 0 zone resets
    slat (usec): min=35, max=370121, avg=70.51, stdev=1180.93
    clat (nsec): min=1035, max=212814, avg=2084.13, stdev=1492.37
    lat (usec): min=36, max=370143, avg=73.02, stdev=1181.03
    clat percentiles (nsec):
    |  1.00th=[ 1080],  5.00th=[ 1144], 10.00th=[ 1192], 20.00th=[ 1304],
    | 30.00th=[ 1368], 40.00th=[ 1544], 50.00th=[ 1784], 60.00th=[ 2096],
    | 70.00th=[ 2352], 80.00th=[ 2608], 90.00th=[ 3536], 95.00th=[ 3632],
    | 99.00th=[ 6176], 99.50th=[ 6368], 99.90th=[ 9024], 99.95th=[10944],
    | 99.99th=[29824]
  bw (  KiB/s): min=  204, max=90432, per=100.00%, avg=43257.93, stdev=27999.03, samples=15
  iops        : min=   51, max=22608, avg=10814.33, stdev=6999.73, samples=15
  lat (usec)   : 2=56.70%, 4=40.40%, 10=2.84%, 20=0.03%, 50=0.02%
  lat (usec)   : 100=0.01%, 250=0.01%
  cpu          : usr=0.71%, sys=1.82%, ctx=196640, majf=0, minf=12
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
    submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    issued rwts: total=0,98304,0,0 short=0,0,0,0 dropped=0,0,0,0
    latency   : target=0, window=0, percentile=100.00%, depth=1

Run status group 0 (all jobs):
  READ: bw=6645KiB/s (6805kB/s), 6645KiB/s-6645KiB/s (6805kB/s-6805kB/s), io=384MiB (403MB), run=59172-59172msec

Run status group 1 (all jobs):
  WRITE: bw=3716KiB/s (3805kB/s), 3716KiB/s-3716KiB/s (3805kB/s-3805kB/s), io=384MiB (403MB), run=105810-105810msec

Disk stats (read/write):
  sdc: ios=21148/3402, merge=0/94865, ticks=71648/183430, in_queue=255079, util=91.04%

USB drive #2:

KDiskMark
                    KDiskMark (2.2.1): https://github.com/JonMagon/KDiskMark
                Flexible I/O Tester (fio-3.25): 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

[Read]
Sequential 1 MiB (Q= 8, T= 1):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
Sequential 1 MiB (Q= 1, T= 1):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
    Random 4 KiB (Q=32, T=16):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
    Random 4 KiB (Q= 1, T= 1):     7.774 MB/s [   1943.6 IOPS] <   511.38 us>

[Write]
Sequential 1 MiB (Q= 8, T= 1):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
Sequential 1 MiB (Q= 1, T= 1):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
    Random 4 KiB (Q=32, T=16):     0.000 MB/s [      0.0 IOPS] <     0.00 us>
    Random 4 KiB (Q= 1, T= 1):    10.566 MB/s [   2641.7 IOPS] <    65.80 us>

Profile: Default
  Test: 128 MiB (x3) [Interval: 5 sec]
  Date: 2021-10-18 22:26:35
    OS: ubuntu 21.10 [linux 5.13.0-19-generic]
fio
> sudo fio --create_only=1 --size=128M --filename=.fio.tmp --name=read
> sudo sync
> sudo sysctl -q vm.drop_caches=3
> sudo fio --loops=3 --size=128M --filename=.fio.tmp --stonewall --ioengine=libaio --direct=1 --randrepeat=0 --refill_buffers --end_fsync=1 \
--name=4k-rand-read --bs=4k --iodepth=1 --numjobs=1 --rw=randread \
--name=4k-rand-write --bs=4k --iodepth=1 --numjobs=1 --rw=randwrite
4k-rand-read: (g=0): rw=randread, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=1
4k-rand-write: (g=1): rw=randwrite, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=1
fio-3.25
Starting 2 processes
Jobs: 1 (f=1): [_(1),F(1)][100.0%][eta 00m:00s]
4k-rand-read: (groupid=0, jobs=1): err= 0: pid=7405: Mon Oct 18 22:28:14 2021
  read: IOPS=4915, BW=19.2MiB/s (20.1MB/s)(384MiB/20000msec)
    slat (usec): min=16, max=17379, avg=196.67, stdev=464.06
    clat (nsec): min=1086, max=285066, avg=3141.48, stdev=2642.30
    lat (usec): min=17, max=17389, avg=200.48, stdev=464.73
    clat percentiles (nsec):
    |  1.00th=[  1144],  5.00th=[  1208], 10.00th=[  1368], 20.00th=[  1832],
    | 30.00th=[  2384], 40.00th=[  3024], 50.00th=[  3344], 60.00th=[  3376],
    | 70.00th=[  3408], 80.00th=[  3472], 90.00th=[  4448], 95.00th=[  5344],
    | 99.00th=[  8640], 99.50th=[ 12736], 99.90th=[ 17792], 99.95th=[ 21888],
    | 99.99th=[115200]
  bw (  KiB/s): min= 4112, max=89024, per=90.23%, avg=17740.21, stdev=25387.09, samples=39
  iops        : min= 1028, max=22256, avg=4434.90, stdev=6346.70, samples=39
  lat (usec)   : 2=21.81%, 4=64.98%, 10=12.49%, 20=0.65%, 50=0.04%
  lat (usec)   : 100=0.02%, 250=0.01%, 500=0.01%
  cpu          : usr=4.50%, sys=9.68%, ctx=98402, majf=0, minf=12
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
    submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    issued rwts: total=98304,0,0,0 short=0,0,0,0 dropped=0,0,0,0
    latency   : target=0, window=0, percentile=100.00%, depth=1
4k-rand-write: (groupid=1, jobs=1): err= 0: pid=7409: Mon Oct 18 22:28:14 2021
  write: IOPS=2684, BW=10.5MiB/s (10.0MB/s)(384MiB/36615msec); 0 zone resets
    slat (usec): min=45, max=4680, avg=74.02, stdev=36.46
    clat (nsec): min=1383, max=181488, avg=2248.32, stdev=2244.04
    lat (usec): min=47, max=4687, avg=76.75, stdev=37.93
    clat percentiles (nsec):
    |  1.00th=[ 1480],  5.00th=[ 1544], 10.00th=[ 1576], 20.00th=[ 1656],
    | 30.00th=[ 1752], 40.00th=[ 1816], 50.00th=[ 1976], 60.00th=[ 2064],
    | 70.00th=[ 2224], 80.00th=[ 2576], 90.00th=[ 3120], 95.00th=[ 3568],
    | 99.00th=[ 6432], 99.50th=[ 6560], 99.90th=[11200], 99.95th=[58624],
    | 99.99th=[99840]
  bw (  KiB/s): min=  850, max=67655, per=100.00%, avg=42523.13, stdev=19437.08, samples=16
  iops        : min=  212, max=16913, avg=10630.56, stdev=4859.40, samples=16
  lat (usec)   : 2=51.73%, 4=45.58%, 10=2.57%, 20=0.05%, 50=0.01%
  lat (usec)   : 100=0.04%, 250=0.01%
  cpu          : usr=2.38%, sys=5.62%, ctx=196636, majf=0, minf=12
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
    submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
    issued rwts: total=0,98304,0,0 short=0,0,0,0 dropped=0,0,0,0
    latency   : target=0, window=0, percentile=100.00%, depth=1

Run status group 0 (all jobs):
  READ: bw=19.2MiB/s (20.1MB/s), 19.2MiB/s-19.2MiB/s (20.1MB/s-20.1MB/s), io=384MiB (403MB), run=20000-20000msec

Run status group 1 (all jobs):
  WRITE: bw=10.5MiB/s (10.0MB/s), 10.5MiB/s-10.5MiB/s (10.0MB/s-10.0MB/s), io=384MiB (403MB), run=36615-36615msec

Disk stats (read/write):
  sdc: ios=20892/3304, merge=0/94846, ticks=19811/55999, in_queue=75809, util=79.21%

Runs only using sudo on Ubuntu 20.04.2

  • Linux-distro: Ubuntu 20.04.2
  • Desktop Environment (KDE/GNOME etc.): Gnome 3.38 (Default Ubuntu 20.04)
  • Qt Version: 5.12.8
  • KDiskMark Version: 2.2.0
  • FIO Version: fio-3.16

Description:

If I starts the application without sudo, nothing happens on click in the buttons. Not even errors in the terminal.

In the other side, if I start the application using sudo, it works.

Steps To Reproduce:

  1. Start kdiskmark
  2. Click on any button to start.

Expect Results

Disk test starts.

Current Results

Nothing happens.

HiDPI not scaling correctly

  • Linux-distro (kernel version): Pop OS 20.10 Kernel 5.11.0-7614-generic
  • Desktop Environment (KDE/GNOME etc.): GNOME 3.38.3 (X11)
  • Qt Version:
  • KDiskMark Version: 2.2.0
  • FIO Version: fio-3.16

Description:

KDiskMark display does not scale using 4K (3840x2160) at 150% scale
Screenshot from 2021-06-04 17-32-28

Steps To Reproduce:

Download deb package from releases github link

Does not work

Linux colab03 5.13.0-37-generic #42~20.04.1-Ubuntu SMP Tue Mar 15 15:44:28 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

Screenshot_20220406_151515

Description:

I click All and it is just stuck on the start page:
Screenshot_20220406_151515

Anyway to get any debug info ?
Thanks

Timeout for benchmarks is to short

  • Linux-distro: Arch Linux
  • Desktop Environment (KDE/GNOME etc.): Gnome
  • Qt Version: 5.15.0
  • KDiskMark Version: 1.5.0
  • FIO Version: fio-3.19

Description:

Currenty KDiskMark uses QProcess::waitForFinished with its default paramter of 30000 msec which is to short for most benchmarks to finish. e.g. with the current tests i get timeout errors on all tests on a hdd.

m_process->waitForFinished();

Loops around the fio invocation

It looks like fio with --loops just iterate same job and then return the mean value.
If so, KDiskMark can be improved when we'll use loop around the fio invocation instead. In so doing, a user could see how long time does it take to make the one loop.

Can not install with snap

  • Linux-distro (kernel version): Raspberry PI OS - Debian x64
  • Desktop Environment (KDE/GNOME etc.): Debian
  • Qt Version:
  • KDiskMark Version: latest
  • FIO Version: fio-#.#

Description:

Can not install with snap

Steps To Reproduce:

sudo snap install kdiskmark
get error -

error: snap "kdiskmark" is not available on stable but is available to install on the following
       channels:

       beta       snap install --beta kdiskmark
       edge       snap install --edge kdiskmark

       Please be mindful pre-release channels may include features not completely tested or
       implemented. Get more information with 'snap info kdiskmark'.

when I choose
snap install --beta kdiskmark
get error -

error: snap "kdiskmark" is not available on beta but is available to install on the following
       channels:

       edge       snap install --edge kdiskmark

       Get more information with 'snap info kdiskmark'.
       

when I choose
snap install --edge kdiskmark
get error -

sudo snap install --edge kdiskmark
error: snap "kdiskmark" is not available on latest/edge but other tracks exist.

       Please be mindful that different tracks may include different features. Get more information
       with 'snap info kdiskmark'.

The name org.jonmagon.kdiskmark was not provided by any .service files

  • Void Linux (5.18.17_1)
  • KDE 5.25.3
  • Qt Version: 5.15.5
  • KDiskMark Version: 2.3.0
  • FIO Version: fio-3.31

Description:

Upon trying to run any of the benchmarks, I get the following error message.
Screenshot_20220816_004848
DBus Backend error: service start org.jonmagon.kdiskmark failed: The name org.jonmagon.kdiskmark was not provided by any .service files

Steps To Reproduce:

  1. Git clone from master.
  2. Successfully build.
  3. Run kdiskmark from within the build directory.
  4. Try to run a benchmark, accepting to overwrite โ ~/โ .kdiskmark.tmp
  5. Receive error message mentioned above, without any terminal output.

Unable to correct problems, you have held broken packages.

  • Linux-distro (kernel version): Raspbian buster armhf
  • Desktop Environment (KDE/GNOME etc.): PIXEL (based on LXDE)
  • Qt Version: /
  • KDiskMark Version: /
  • FIO Version: /

Description:

Cannot install normally via deb packages.(from ppa)

Note, selecting 'kdiskmark' instead of '/home/pi/kdiskmark.deb'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 kdiskmark : Depends: libkf5authcore5 (>= 5.56.0) but it is not installable
             Depends: libqt5core5a (>= 5.14.1) but 5.11.3+dfsg1-1+rpi1+deb10u4 is to be installed
E: Unable to correct problems, you have held broken packages.

Steps To Reproduce:

Install KDiskMark on Raspberry Pi via deb packages.

Confinement workaround patches for the KDiskMark snap

Hello, recently I found your snap packaging implementation, try building it, and made some patches that will make it run and (with some limitations) run some tests on my storage device. You may check out the patches at my fork's branch.

Known issues:

  • Settings > Flush pagecache option can't be enabled due to unavailable confinement interfaces that would properly enable so
  • File > Save option will cause the application to hang
  • Theme > Stylesheet Dark option doesn't have expected result

It may be possible to temporarily apply for classic confinement if the application can't be made into strict confinement due to snapd's own confinement interface limitations according to the Process for reviewing classic confinement snaps:

Criteria

This lists some criteria that might require classic (non-exhaustive):

  • access to resources not yet supported by snapd and where the requirement is clearly understood to be supportable by snapd. This may result in temporarily granting classic until snapd supports the use case in strict mode

Cheers!

All FIO threads spawn on the same cpu core

  • Linux-distro (kernel version): ubuntu bionic 4.9.140
  • Desktop Environment (KDE/GNOME etc.): GNOME
  • Qt Version: 5.9.5
  • KDiskMark Version: current bionic apt repo version
  • FIO Version: fio-3.1-1

Description:

I am testing this on a relatively low powered SBC (tegra x1). All the FIO threads spawn on the same cpu core, which pins one core to 100% on the heavy IO tests (like the 4k read/writes). This results in much worse performance than the storage drives are capable of (getting 6,600 IOPS on the tegra x1 and 40,000 IOPS using the same drive on a MUCH more powerful windows machiene). Note: crystaldiskmark appears to use all cpu cores (even if it doesn't show in taskmanager).

benchmarks fail to run on button click

  • KDiskMark Version: 2.0.0 (commit f12d789 of benchmark.cpp)

Description:

The app does not start the benchmarks when clicking on the buttons.

Steps To Reproduce:

Happens on my rig in all runs after compiling from source. Also present in the version that can be downloaded via apt.

Likely reason:

Lingering variable init. The Benchmark class in benchmark.cpp does not initialise the m_running member, hence it inits to random. Adding

m_running = false;

to the Benchmark constructor fixes the problem.

Ubuntu 20.04 - Cannot add directory or network share

Hi,
I would like to use kdiskmark to check a nfs network share.
I successfuly installed kdiskmark within Ubuntu from the software package manager. However I only see a number of (local) directories, many of them are greyed. No way to add a dedicated directory. If I click on "add directory" I am lost in the file explorer and cannot select a specific directory (maybe there is a trick?).

I also tried to install kdiskmark via snap - this works but now I only have 1 directory (/home/.....) to select from.

When I run "sudo kdiskmark" then I get permission errors ("cannot create directory /run/user/0 - permission denied") - realpath - no such file or directory!

Any idea how to solve this poroblem?

Thanks
Wolfgang

How are custom fio flags supplied?

Hi,

Is there any way to supply custom additional fio flags for these tests? essentially creating a custom profile from existing profiles.

For example, I'm looking to supply the --direct=1 flag to skip cache and vice-versa. This is for an Azure Disk.

Thanks,

Run error with "Benchmark Failed"

report Dbus Backend error: service start org.jonmagon.kdiskmark failed: Launch helper exited with unknown return code 255.

And the screen print: QDBusArgument: read from a write-only object.

Any help here?

Console

This is excellent, ty!

Could you possibly add a text-mode output for non-x11 systems?

[Feature request] Add comma as separator

It's not a bug I guess. The program use dot as separator in general. But not all language use dot. So please let the program use the system's setting or add an option to let the user set the desired separator.

wrong multi threaded performance

  • Linux-distro: manjaro
  • Desktop Environment (KDE/GNOME etc.): KDE
  • Qt Version:
  • KDiskMark Version: 1.5.1
  • FIO Version: fio-3.21

Description:

just like the screenshot on this webpage shows the performance of RND4K Q32T16 where T>0 is way too low. It should much higher than Q1T1 performance.
that's not reproduced with fio --threads and not reproduced with crystaldiskmark with the same drives.
to override: set T=1 and watch performance grow tenfold on NVME
nothing in the "Profile" menu so far

Steps To Reproduce:

use default profile and watch the result in 3rd line

note: since test folder is forced to be home folder, it's a bit struggle to test disk performance if home folder is encrypted

No FIO was found. Please install FIO before using KDiskMark.

I was getting the following error on Manjaro, when starting KDiskMark:

No FIO was found. Please install FIO before using KDiskMark.

Of course, FIO was installed and I tried removing and reinstalling both FIO and KDiskMark but, unfortunately I was getting the same error. So I ran fio in the terminal and I got the following error:

fio: error while loading shared libraries: libtcmalloc.so.4: cannot open shared object file: No such file or directory

Googling that lib led me to discover that tcmalloc wasn't installed, which led me to gperftools. So I installed gperftools and now KDiskMark seems to be working.

Thought I'd leave this note should others run into this issue as well.

Anyway to avoid asking for pass for dropping caches?

I searched around and couldn't find an answer. This is a really nice tool. I am wondering is there a way to run it unattended without typing password when it needs to drop caches? I suppose that I could run into as root, but that's kind of dangerous. Any ideas? Thanks a lot!

KDiskMark doesn't remember the settings

  • Linux-distro (kernel ver.): 1. MX Linux 21 x86 [Debian 11] (kernel 5.10.0-9) | 2. openSUSE Leap 15.3 x64 (kernel 5.3.18-59.40)
  • Desktop Environment (KDE/GNOME etc.): 1. Xfce 4.16 [X11] | 2. KDE Plasma 5.23.5 (Qt 5.15.2) [X11]
  • KDiskMark Version: 1. 2.3.0 | 2. 2.2.1
  • FIO Version: 1. fio-3.25 | 2. fio-3.23

Description:

KDiskMark doesn't remember the settings.

Steps To Reproduce:

Open KDiskMark, change settings like language or Profile, close it. Open program again - previous settings are not restored.

By the way - in openSUSE & KDiskMark 2.3.0 - I see ~/.config/kdiskmarkrc but there is no such file in MX Linux with KDiskMark 2.2.1 (installed from repo)

Additionally, weird behavior observed - in openSUSE Leap 15.3 x64, after installing ( https://software.opensuse.org/download/package?package=kdiskmark&project=home%3Amrbadguy%3AKDE5 )
and starting the application, interface was with American English language (system lang. -> polish) but in MX Linux (again system lang. set to polish) - app. started with polish language (as expected).

Drive space used in % and GB used isn't shown correctly

My system

  • Linux distro: Kubuntu 20.04.3 LTS, 5.11.0-43-generic, x86_64
  • Desktop Environment: KDE Plasma 5.18.5, KDE Frameworks 5.68.0
  • Qt Version: 5.12.8
  • KDiskMark Version: 2.3.0
  • FIO Version: fio-3.16

Description:

If you select a folder (no matter where, both on / and /home/bram for me) it shows an incorrect value at percentage and GB's used, see these screenshots:
kdiskmark-1
kdiskmark-2

Steps To Reproduce:

Select a folder, and you'll see the drive space used in % and GB used isn't shown correctly

The MB/s|GB/s|IOPS|us dropdown setting doesn't work correctly when switching profiles.

  • Linux-distro (kernel version): arch linux 5.16.2
  • Desktop Environment (KDE/GNOME etc.): i3
  • Qt Version: qt5
  • KDiskMark Version: 2.3.0
  • FIO Version: fio-3.28

Description:

The MB/s|GB/s|IOPS|us dropdown setting doesn't work correctly when switching profiles.

Steps To Reproduce:

Select the default profile, and change the dropdown to GB/s
Switch to the peak profile, run the test
You'll notice the numbers are in MB/s but the display at the top shows GB/s

screenshot_20220207150900
screenshot_20220207151803

Cant run Kdiskmark as sudo, crashed immediately

  • Linux-distro (kernel version): Linux Mint 20.3 (5.4.0-91-generic)
  • Desktop Environment : Cinnamon
  • Qt Version: couldnt even find out to to check that
  • KDiskMark Version:2.3.0
  • FIO Version: fio-3.1

Description:

Installed Kdsikmark through snap, running it without sudo has the following command line output, but the program works fine:

user123@user123-ubuntu:~$ kdiskmark
Qt: Session management error: Could not open network socket

Running it as sudo has this output, the program window never opens:

user123@user123-ubuntu:~$ sudo kdiskmark
mkdir: cannot create directory '/run/user/0': Permission denied
No protocol specified
qt.qpa.xcb: could not connect to display :0
QStandardPaths: XDG_RUNTIME_DIR points to non-existing path '/run/user/0/snap.kdiskmark', please create it with 0700 permissions.
QStandardPaths: XDG_RUNTIME_DIR points to non-existing path '/run/user/0/snap.kdiskmark', please create it with 0700 permissions.
QStandardPaths: XDG_RUNTIME_DIR points to non-existing path '/run/user/0/snap.kdiskmark', please create it with 0700 permissions.
no screens available, assuming 24-bit color
Segmentation fault

Steps To Reproduce:

  1. install snap on linux mint
  2. install kdiskmark through snap
  3. run kdiskmark or sudo kdiskmark

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.