Skip to content
Snippets Groups Projects
  1. Oct 07, 2018
    • Benedikt Rascher-Friesenhausen's avatar
      Optimise `memcmp` for speed · e10a3463
      Benedikt Rascher-Friesenhausen authored
      I saw that in other parts of the `string` module iterations over `usize` were
      used to increase iteration speed.  In this patch I apply the same logic to
      `memcmp`.  With this change I measured a 7x speedup for `memcmp` on a ~1MB
      buffer (comparing two buffers with the same content) on my machine (i7-7500U),
      but I did not do any real world benchmarking for the change.  The increase in
      speed comes with the tradeoff of both increased complexity and larger generated
      assembly code for the function.
      
      I tested the correctness of the implementation by generating two randomly filled
      buffers and comparing the `memcmp` result of the old implementation against this
      new one.
      
      I ran the tests and currently currently three of them fail:
        - netdb (fails to run)
        - stdio/rename (fails to verify)
        - unistd/pipe (fails to verify)
      
      They do so though regardless of this change, so I don't think they are related.
      e10a3463
  2. Oct 06, 2018
  3. Oct 05, 2018
  4. Oct 02, 2018
  5. Sep 29, 2018
  6. Sep 26, 2018
  7. Sep 25, 2018
  8. Sep 24, 2018
  9. Sep 23, 2018
  10. Sep 22, 2018
  11. Sep 21, 2018
  12. Sep 20, 2018
  13. Sep 19, 2018
  14. Sep 18, 2018
Loading