-
-
Notifications
You must be signed in to change notification settings - Fork 674
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
11 changed files
with
411 additions
and
131 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,7 @@ members = [ | |
"krokiet" | ||
] | ||
exclude = [ | ||
"misc/test_read_perf", | ||
"ci_tester", | ||
] | ||
resolver = "2" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
Performance comparison of using Array and Vector with specific buffer sizes for reading files from disk and calculating their hashes. | ||
This is quite realistic scenario which also uses rayon which sometimes sometimes mess with predictability of results. | ||
My computer have quite good CPU, but cheap Sata SSD, so results shows disk | ||
|
||
(Time to read files and calculate hashes in parallel, smaller is better) | ||
| Name | 250000 files ~50 KB(SSD) | 170 files 5MB-150MB(SSD) | 1 file 0.9 GB(SSD) | 6200 files 50KB - 50MB(HDD) | 1 file 671 MB(HDD) | | ||
| --- | --- | --- | --- | --- | --- | --- | | ||
| Array 16KB | Base | Base | Base | Base | | ||
| Vector 16KB | 0% | 0% | 0% | 0% | 0% | | ||
| Vector 1MB | -7% | -4% | -16% | -45% | 0% | | ||
| Thread local Vector 1MB | -12% | -4% | -16% | -45% | 0% | | ||
|
||
I tried to |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
[package] | ||
name = "test_read_perf" | ||
version = "0.1.0" | ||
edition = "2021" | ||
|
||
[dependencies] | ||
czkawka_core = { path = "../../czkawka_core" } | ||
walkdir = "2.5.0" | ||
humansize = "2.1.3" | ||
rayon = "1.10.0" | ||
strum = { version = "0.26.3", features = ["strum_macros", "derive"] } |
Oops, something went wrong.