Skip to content

performance issue on Intel(R) Xeon(R) Gold 5320 with ubuntu 20.04 #9

@charleschetty

Description

@charleschetty

I’d nearly forgotten about this project, but recently some friends took an interest in the tool. So I ran a new round of benchmarks and discovered a significant performance degradation on an Intel® Xeon® Gold 5320 under Ubuntu 20.04.

CrabFetch exhibits the same issue.

hyperfine --runs 100 -N --warmup=20 "./fastfetch -c /home/zjt/ccfetch/benchmark/2.jsonc" "ccfetch" "/home/zjt/CrabFetch/target/release/crab-fetch -c /home/zjt/CrabFetch/target/release/1.toml"
Benchmark 1: ./fastfetch -c /home/zjt/ccfetch/benchmark/2.jsonc
  Time (mean ± σ):       3.8 ms ±   0.2 ms    [User: 1.0 ms, System: 2.8 ms]
  Range (min … max):     3.7 ms …   4.7 ms    100 runs

  Warning: Statistical outliers were detected. Consider re-running this benchmark on a quiet system without any interferences from other programs. It might help to use the '--warmup' or '--prepare' options.

Benchmark 2: ccfetch
  Time (mean ± σ):      11.4 ms ±   0.9 ms    [User: 6.4 ms, System: 4.9 ms]
  Range (min … max):    11.1 ms …  18.4 ms    100 runs

  Warning: Statistical outliers were detected. Consider re-running this benchmark on a quiet system without any interferences from other programs. It might help to use the '--warmup' or '--prepare' options.

Benchmark 3: /home/zjt/CrabFetch/target/release/crab-fetch -c /home/zjt/CrabFetch/target/release/1.toml
  Time (mean ± σ):      12.7 ms ±   0.5 ms    [User: 8.1 ms, System: 4.5 ms]
  Range (min … max):    12.5 ms …  15.9 ms    100 runs

  Warning: Statistical outliers were detected. Consider re-running this benchmark on a quiet system without any interferences from other programs. It might help to use the '--warmup' or '--prepare' options.

Summary
  ./fastfetch -c /home/zjt/ccfetch/benchmark/2.jsonc ran
    2.97 ± 0.26 times faster than ccfetch
    3.31 ± 0.20 times faster than /home/zjt/CrabFetch/target/release/crab-fetch -c /home/zjt/CrabFetch/target/release/1.toml

However, on Intel(R) Core(TM) i7-6700 CPU with ArchLinux ,

hyperfine --runs 100 -N --warmup=20 "./fastfetch -c /home/charles/Documents/github/ccfetch/benchmark/2.jsonc" "/home/charles/Documents/github/ccfetch/target/release/ccfetch" /"home/charles/Sourcefile/CrabFetch/target/release/crab-fetch -c /home/charles/Sourcefile/CrabFetch/target/release/1.toml"
Benchmark 1: ./fastfetch -c /home/charles/Documents/github/ccfetch/benchmark/2.jsonc
  Time (mean ± σ):       6.8 ms ±   0.3 ms    [User: 2.2 ms, System: 4.5 ms]
  Range (min … max):     6.4 ms …   7.5 ms    100 runs

Benchmark 2: /home/charles/Documents/github/ccfetch/target/release/ccfetch
  Time (mean ± σ):       5.0 ms ±   0.2 ms    [User: 3.3 ms, System: 1.5 ms]
  Range (min … max):     4.7 ms …   5.6 ms    100 runs

Benchmark 3: /home/charles/Sourcefile/CrabFetch/target/release/crab-fetch -c /home/charles/Sourcefile/CrabFetch/target/release/1.toml
  Time (mean ± σ):       7.5 ms ±   0.4 ms    [User: 5.1 ms, System: 2.3 ms]
  Range (min … max):     6.9 ms …   9.3 ms    100 runs

Summary
  /home/charles/Documents/github/ccfetch/target/release/ccfetch ran
    1.37 ± 0.07 times faster than ./fastfetch -c /home/charles/Documents/github/ccfetch/benchmark/2.jsonc
    1.51 ± 0.10 times faster than /home/charles/Sourcefile/CrabFetch/target/release/crab-fetch -c /home/charles/Sourcefile/CrabFetch/target/release/1.toml

I’ve been tied up with some things lately, but I may come back later to look into the issue。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions