这是indexloc提供的服务,不要输入任何密码
Skip to content

Conversation

@folkertdev
Copy link
Member

for small chunk sizes anyway, for larger ones it does not matter, but the code without the copy is a lot simpler.

Benchmark 1 (85 runs): target/release/examples/uncompress-baseline rs-chunked 5 silesia-small.tar.gz
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          58.8ms ±  505us    58.0ms … 60.8ms          3 ( 4%)        0%
  peak_rss           24.1MB ± 70.3KB    23.9MB … 24.1MB          0 ( 0%)        0%
  cpu_cycles          232M  ± 1.66M      230M  …  242M           7 ( 8%)        0%
  instructions        677M  ±  245       677M  …  677M           1 ( 1%)        0%
  cache_references   3.11M  ±  403K     2.91M  … 6.74M           1 ( 1%)        0%
  cache_misses        120K  ± 10.7K      107K  …  172K           5 ( 6%)        0%
  branch_misses      3.23M  ± 10.2K     3.21M  … 3.27M           1 ( 1%)        0%
Benchmark 2 (87 runs): target/release/examples/blogpost-uncompress rs-chunked 5 silesia-small.tar.gz
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          57.7ms ±  934us    56.9ms … 64.1ms          4 ( 5%)        ⚡-  1.9% ±  0.4%
  peak_rss           24.1MB ± 64.2KB    23.9MB … 24.1MB          0 ( 0%)          +  0.0% ±  0.1%
  cpu_cycles          226M  ± 3.72M      225M  …  253M           5 ( 6%)        ⚡-  2.2% ±  0.4%
  instructions        672M  ±  289       672M  …  672M           0 ( 0%)          -  0.8% ±  0.0%
  cache_references   3.13M  ±  116K     2.87M  … 3.95M           2 ( 2%)          +  0.6% ±  2.8%
  cache_misses        146K  ± 14.8K      123K  …  211K           3 ( 3%)        💩+ 21.7% ±  3.2%
  branch_misses      3.10M  ± 6.17K     3.10M  … 3.15M           2 ( 2%)        ⚡-  4.0% ±  0.1%
Benchmark 1 (111 runs): target/release/examples/uncompress-baseline rs-chunked 7 silesia-small.tar.gz
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          45.0ms ± 1.71ms    43.9ms … 62.3ms          5 ( 5%)        0%
  peak_rss           24.1MB ± 67.3KB    23.9MB … 24.1MB          0 ( 0%)        0%
  cpu_cycles          169M  ± 6.37M      167M  …  234M          13 (12%)        0%
  instructions        502M  ±  261       502M  …  502M           0 ( 0%)        0%
  cache_references   3.14M  ±  375K     2.88M  … 6.47M           5 ( 5%)        0%
  cache_misses        125K  ± 33.2K      108K  …  369K           5 ( 5%)        0%
  branch_misses      1.98M  ± 6.39K     1.98M  … 2.01M          10 ( 9%)        0%
Benchmark 2 (112 runs): target/release/examples/blogpost-uncompress rs-chunked 7 silesia-small.tar.gz
  measurement          mean ± σ            min … max           outliers         delta
  wall_time          44.9ms ±  458us    44.0ms … 46.4ms          7 ( 6%)          -  0.2% ±  0.7%
  peak_rss           24.1MB ± 68.1KB    23.9MB … 24.1MB          0 ( 0%)          -  0.0% ±  0.1%
  cpu_cycles          168M  ± 1.16M      167M  …  175M          14 (13%)          -  0.3% ±  0.7%
  instructions        500M  ±  237       500M  …  500M           0 ( 0%)          -  0.3% ±  0.0%
  cache_references   3.18M  ±  153K     2.94M  … 4.52M           2 ( 2%)          +  1.2% ±  2.4%
  cache_misses        113K  ± 5.27K     98.8K  …  132K           8 ( 7%)        ⚡-  9.2% ±  5.0%
  branch_misses      2.00M  ± 1.63K     1.99M  … 2.00M           1 ( 1%)          +  0.7% ±  0.1%

@folkertdev folkertdev force-pushed the adler32-copy-with-memcpy branch from d31e0fb to 3af2d51 Compare September 19, 2024 12:43
@folkertdev folkertdev merged commit 9b5a343 into main Sep 19, 2024
@folkertdev folkertdev deleted the adler32-copy-with-memcpy branch September 19, 2024 12:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants