Czkawka (tch•kav•ka (IPA: [ˈʧ̑kafka]), “hiccup” in Polish) is a simple, fast and free app to remove unnecessary files from your computer.
Krokiet ((IPA: [ˈkrɔcɛt]), “croquet” in Polish) same as above, but uses Slint frontend.
Each tool uses different technologies, so you can find instructions for each of them in the appropriate file:
Previous benchmark was done mostly with two python project - dupeguru and fslint.
Both were written in python so it was mostly obvious that Czkawka will be faster due using more low-level functions and faster language.
I tried to use rmlint gui but it not even started on my computer, so instead I used Detwinner, fclones-gui and dupeguru.
I tested it on a 1024 GB SSD(Sata 3) and an i7-4770 CPU(4/8HT), disk contains 1742102 files which took 850 GB Minimum file size 64KB, with search in hidden folders without any excluded folders/files.
Czkawka 7.0.0 Detwinner 0.4.2 Dupeguru 4.3.1 Fclones-gui 0.2.0
I prepared a disk and performed a test without any folder exceptions and with disabled ignoring of hard links. The disk contained 363 215 files, took 221,8 GB and had 62093 duplicate files in 31790 groups which occupied 4,1 GB.
I set the minimal file size to check to 1KB on all programs.
App | Executing Time |
---|---|
FSlint 2.4.7 (First Run) | 86s |
FSlint 2.4.7 (Second Run) | 43s |
Czkawka 3.0.0 (First Run) | 8s |
Czkawka 3.0.0 (Second Run) | 7s |
DupeGuru 4.1.1 (First Run) | 22s |
DupeGuru 4.1.1 (Second Run) | 21s |
I used Mprof for checking memory usage of FSlint and DupeGuru, and Heaptrack for Czkawka.
App | Idle Ram | Max Operational Ram Usage | Stabilized after search |
---|---|---|---|
FSlint 2.4.7 | 62 MB | 164 MB | 158 MB |
Dupeguru 4.1.1 | 90 MB | 170 MB | 166 MB |
Czkawka 3.0.0 | 12 MB | 122 MB | 60 MB |
In Dupeguru, I enabled checking images with different dimensions to match Czkawka behavior. Both apps use a caching mechanism, so the second scan is really fast.
Similar images which check 10949 files that occupied 6.6 GB
App | Scan time |
---|---|
Czkawka 3.0.0 (First Run) | 276s |
Czkawka 3.0.0 (Second Run) | 1s |
DupeGuru 4.1.1 (First Run) | 539s |
DupeGuru 4.1.1 (Second Run) | 1s |
Similar images which check 349 image files that occupied 1.7 GB
App | Scan time |
---|---|
Czkawka 3.0.0 (First Run) | 54s |
Czkawka 3.0.0 (Second Run) | 1s |
DupeGuru 4.1.1 (First Run) | 55s |
DupeGuru 4.1.1 (Second Run) | 1s |
Of course there are multiple tools that offer even better performance, but usually are only specialized in one simple area.
Bleachbit is a master at finding and removing temporary files, while Czkawka only finds the most basic ones. So these two apps shouldn’t be compared directly or be considered as an alternative to one another.
In this comparison remember, that even if app have same features they may work different(e.g. one app may have more options to choose than other).
Czkawka | Krokiet | FSlint | DupeGuru | Bleachbit | |
---|---|---|---|---|---|
Language | Rust | Rust | Python | Python/Obj-C | Python |
Framework base language | C | Rust | C | C/C++/Obj-C/Swift | C |
Framework | GTK 4 | Slint | PyGTK2 | Qt 5 (PyQt)/Cocoa | PyGTK3 |
OS | Lin,Mac,Win | Lin,Mac,Win | Lin | Lin,Mac,Win | Lin,Mac,Win |
Duplicate finder | ✔ | ✔ | ✔ | ✔ | |
Empty files | ✔ | ✔ | ✔ | ||
Empty folders | ✔ | ✔ | ✔ | ||
Temporary files | ✔ | ✔ | ✔ | ✔ | |
Big files | ✔ | ✔ | |||
Similar images | ✔ | ✔ | ✔ | ||
Similar videos | ✔ | ✔ | |||
Music duplicates(tags) | ✔ | ✔ | ✔ | ||
Invalid symlinks | ✔ | ✔ | ✔ | ||
Broken files | ✔ | ✔ | |||
Names conflict | ✔ | ✔ | ✔ | ||
Invalid names/extensions | ✔ | ✔ | ✔ | ||
Installed packages | ✔ | ||||
Bad ID | ✔ | ||||
Non stripped binaries | ✔ | ||||
Redundant whitespace | ✔ | ||||
Overwriting files | ✔ | ✔ | |||
Multiple languages | ✔ | ✔ | ✔ | ✔ | |
Cache support | ✔ | ✔ | ✔ | ||
In active development | Yes | Yes | No | Yes | Yes |
There are many similar applications to Czkawka on the Internet, which do some things better and some things worse:
Due to limited time, the biggest emphasis is on the GUI version so if you are looking for really good and feature-packed console apps, then take a look at these:
Contributions to this repository are welcome.
You can help by creating:
PR welcome
are already checked and accepted.You can also help by doing other things:
Big thanks to Pádraig Brady, creator of fantastic FSlint, because without his work I wouldn’t create this tool.
Thanks also to all the people who create patches for this program, make it available on other systems, create videos, articles about it etc.
Also, I really appreciate work of people that create crates on which Czkawka is based and for that I try to report bugs to make it even better.
If you are using the app, I would appreciate a donation for its further development, which can be done here.