[Python-ideas] PEP: Hide implementation details in the C API
Terry Reedy
tjreedy at udel.edu
Wed Jul 12 00:24:27 EDT 2017
On 7/11/2017 11:30 PM, Nick Coghlan wrote:
> Commenting more on specific technical details rather than just tone this time :)
>
> On 11 July 2017 at 20:19, Victor Stinner <victor.stinner at gmail.com> wrote:
>> Reference counting may be emulated in a future implementation for
>> backward compatibility.
One heavy user's experience with garbage collection:
https://engineering.instagram.com/dismissing-python-garbage-collection-at-instagram-4dca40b29172
"Instagram can run 10% more efficiently. ... Yes, you heard it right! By
disabling GC [and relying only on ref counting], we can reduce the
memory footprint and improve the CPU LLC cache hit ratio"
It turned out that gc.disable() was inadequate because imported
libraries could turn it on, and one did.
> I don't believe this is the best rationale to use for the PEP, as we
> (or at least I) have emphatically promised *not* to do another Python
> 3 style compatibility break, and we know from PyPy's decade of
> challenges that a lot of Python's users care even more about CPython C
> API/ABI compatibility than they do the core data model.
[snip most]
--
Terry Jan Reedy
More information about the Python-ideas
mailing list