[Checkins] [zopefoundation/zope.interface] 8e81aa: Benchmarks looking up adapters from components.

Jason Madden noreply at github.com
Tue Mar 10 23:51:38 CET 2020


  Branch: refs/heads/faster-eq-hash-comparison
  Home:   https://github.com/zopefoundation/zope.interface
  Commit: 8e81aab8c5760372cf79803ddf16188e4bf2baf9
      https://github.com/zopefoundation/zope.interface/commit/8e81aab8c5760372cf79803ddf16188e4bf2baf9
  Author: Jason Madden <jamadden at gmail.com>
  Date:   2020-03-10 (Tue, 10 Mar 2020)

  Changed paths:
    M benchmarks/micro.py

  Log Message:
  -----------
  Benchmarks looking up adapters from components.

Current results (this branch vs master, 354faccebd5b612a2ac8e081a7e5d2f7fb1089c1):

| Benchmark                                 | 38-master | 38-faster                     |
|-------------------------------------------|-----------|-------------------------------|
| query adapter (no registrations)          | 3.81 ms   | 3.03 ms: 1.26x faster (-20%)  |
| query adapter (all trivial registrations) | 4.65 ms   | 3.90 ms: 1.19x faster (-16%)  |
| contains (empty dict)                     | 163 ns    | 76.1 ns: 2.14x faster (-53%)  |
| contains (populated dict)                 | 162 ns    | 76.9 ns: 2.11x faster (-53%)  |
| contains (populated list)                 | 40.3 us   | 3.09 us: 13.04x faster (-92%) |

Also need benchmarks using inheritance. The 'implied' data structures
are also hash/equality based.




More information about the checkins mailing list