mirror of https://github.com/python/cpython
[3.13] GH-109975: Copyedit 3.13 What's New: Optimizations (GH-123301) (#123308)
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
This commit is contained in:
parent
391e5626e3
commit
311dedadf6
|
@ -487,6 +487,8 @@ but the platform is not yet officially supported.
|
||||||
.. seealso:: :pep:`730`, :pep:`738`
|
.. seealso:: :pep:`730`, :pep:`738`
|
||||||
|
|
||||||
|
|
||||||
|
.. _whatsnew313-incremental-gc:
|
||||||
|
|
||||||
Incremental garbage collection
|
Incremental garbage collection
|
||||||
------------------------------
|
------------------------------
|
||||||
|
|
||||||
|
@ -1465,24 +1467,33 @@ zipimport
|
||||||
Optimizations
|
Optimizations
|
||||||
=============
|
=============
|
||||||
|
|
||||||
* :func:`textwrap.indent` is now ~30% faster than before for large input.
|
* The new :ref:`incremental garbage collector <whatsnew313-incremental-gc>`
|
||||||
|
means that maximum pause times are reduced
|
||||||
|
by an order of magnitude or more for larger heaps.
|
||||||
|
(Contributed by Mark Shannon in :gh:`108362`.)
|
||||||
|
|
||||||
|
* Several standard library modules have had
|
||||||
|
their import times significantly improved.
|
||||||
|
For example, the import time of the :mod:`typing` module
|
||||||
|
has been reduced by around a third by removing dependencies
|
||||||
|
on :mod:`re` and :mod:`contextlib`.
|
||||||
|
Other modules to enjoy import-time speedups include
|
||||||
|
:mod:`email.utils`, :mod:`enum`, :mod:`functools`,
|
||||||
|
:mod:`importlib.metadata`, and :mod:`threading`.
|
||||||
|
(Contributed by Alex Waygood, Shantanu Jain, Adam Turner, Daniel Holla,
|
||||||
|
and others in :gh:`109653`.)
|
||||||
|
|
||||||
|
* :func:`textwrap.indent` is now around 30% faster than before for large input.
|
||||||
(Contributed by Inada Naoki in :gh:`107369`.)
|
(Contributed by Inada Naoki in :gh:`107369`.)
|
||||||
|
|
||||||
* The :mod:`subprocess` module uses :func:`os.posix_spawn` in more situations
|
* The :mod:`subprocess` module now uses the :func:`~os.posix_spawn` function in
|
||||||
including the default where ``close_fds=True`` on many modern platforms. This
|
more situations, including when *close_fds* is ``True`` (the default)
|
||||||
should provide a noteworthy performance increase launching processes on
|
on many modern platforms.
|
||||||
FreeBSD and Solaris. See the :ref:`subprocess <whatsnew313-subprocess>`
|
This should provide a notable performance increase
|
||||||
section above for details.
|
when launching processes on FreeBSD and Solaris.
|
||||||
|
See the :ref:`subprocess <whatsnew313-subprocess>` section above for details.
|
||||||
(Contributed by Jakub Kulik in :gh:`113117`.)
|
(Contributed by Jakub Kulik in :gh:`113117`.)
|
||||||
|
|
||||||
* Several standard library modules have had their import times significantly
|
|
||||||
improved. For example, the import time of the :mod:`typing` module has been
|
|
||||||
reduced by around a third by removing dependencies on :mod:`re` and
|
|
||||||
:mod:`contextlib`. Other modules to enjoy import-time speedups include
|
|
||||||
:mod:`importlib.metadata`, :mod:`threading`, :mod:`enum`, :mod:`functools`
|
|
||||||
and :mod:`email.utils`.
|
|
||||||
(Contributed by Alex Waygood, Shantanu Jain, Adam Turner, Daniel Hollas and
|
|
||||||
others in :gh:`109653`.)
|
|
||||||
|
|
||||||
Removed Modules And APIs
|
Removed Modules And APIs
|
||||||
========================
|
========================
|
||||||
|
|
Loading…
Reference in New Issue