diff --git a/Doc/whatsnew/2.7.rst b/Doc/whatsnew/2.7.rst index e44a42b3539..9148743dc05 100644 --- a/Doc/whatsnew/2.7.rst +++ b/Doc/whatsnew/2.7.rst @@ -129,6 +129,18 @@ A few performance enhancements have been added: (Suggested by Martin von Loewis and implemented by Antoine Pitrou; :issue:`4074`.) +* The garbage collector tries to avoid tracking simple containers which + can't be part of a cycle. As of now, this is true for tuples and dicts + containing atomic types (such as ints, strings, etc.). Transitively, a dict + containing tuples of atomic types won't be tracked either. This helps bring + down the individual cost of each garbage collection, since it decreases the + number of objects to be considered and traversed by the collector. + + To help diagnosing this optimization, a new function in the :mod:`gc` + module, :func:`is_tracked`, returns True if a given instance is tracked + by the garbage collector, False otherwise. + (Contributed by Antoine Pitrou; :issue:`4688`.) + .. ======================================================================