uutils/coreutils

du: our implementation is slower than GNU's

Open

#6 845 ouverte le 5 nov. 2024

Voir sur GitHub
 (12 commentaires) (0 réactions) (0 assignés)Rust (1 852 forks)batch import
I - Performance (Speed)U - dugood first issue

Métriques du dépôt

Stars
 (23 246 stars)
Métriques de merge PR
 (Merge moyen 5j 23h) (239 PRs mergées en 30 j)

Description

On firefox source code (lot of files and directories):

# with 0.0.17:

$ hyperfine "/usr/bin/du " "/usr/lib/cargo/bin/coreutils/du" 
Benchmark 1: /usr/bin/du
  Time (mean ± σ):      3.804 s ±  0.051 s    [User: 1.174 s, System: 2.606 s]
  Range (min … max):    3.722 s …  3.884 s    10 runs

Benchmark 2: /usr/lib/cargo/bin/coreutils/du
  Time (mean ± σ):      4.822 s ±  0.056 s    [User: 1.608 s, System: 3.190 s]
  Range (min … max):    4.754 s …  4.921 s    10 runs

Summary
  '/usr/bin/du ' ran
    1.27 ± 0.02 times faster than '/usr/lib/cargo/bin/coreutils/du '

seems that we regressed:

# with 0.0.26:

hyperfine "/usr/bin/du " "/usr/lib/cargo/bin/coreutils/du "
Benchmark 1: /usr/bin/du
  Time (mean ± σ):      3.980 s ±  0.075 s    [User: 1.181 s, System: 2.772 s]
  Range (min … max):    3.887 s …  4.087 s    10 runs

Benchmark 2: /usr/lib/cargo/bin/coreutils/du
  Time (mean ± σ):      6.947 s ±  0.096 s    [User: 2.533 s, System: 5.479 s]
  Range (min … max):    6.800 s …  7.104 s    10 runs

Summary
  '/usr/bin/du ' ran
    1.75 ± 0.04 times faster than '/usr/lib/cargo/bin/coreutils/du '

Guide contributeur