From c301b55d7bf667b690065e19c883d9c02accb8bb Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Mon, 19 Aug 2013 09:12:20 -0700 Subject: [PATCH] Issue 18774: Update news and whatsnew for the set optimizations --- Doc/whatsnew/3.4.rst | 6 ++++++ Misc/NEWS | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/Doc/whatsnew/3.4.rst b/Doc/whatsnew/3.4.rst index 1c30d43199..f7d0c2654f 100644 --- a/Doc/whatsnew/3.4.rst +++ b/Doc/whatsnew/3.4.rst @@ -389,6 +389,12 @@ Major performance enhancements have been added: * The UTF-32 decoder is now 3x to 4x faster. +* The cost of hash collisions for sets is now reduced. Each hash table + probe now checks a second key/hash pair for each cache line retrieved. + This exploits cache locality to make collision resolution less expensive. + + (Contributed by Raymond Hetting in :issue"`18771`.) + Build and C API Changes ======================= diff --git a/Misc/NEWS b/Misc/NEWS index f5dbfeec28..df4a09b955 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -12,6 +12,10 @@ Core and Builtins - Issue #18774: Remove last bits of GNU PTH thread code and thread_pth.h. +- Issue #18771: Add optimization to set object lookups to reduce the cost + of hash collisions. The core idea is to inspect a second key/hash pair + for each cache line retrieved. + - Issue #16105: When a signal handler fails to write to the file descriptor registered with ``signal.set_wakeup_fd()``, report an exception instead of ignoring the error. -- 2.40.0