gh-109700: Improve stress tests for interpreter creation by serhiy-storchaka · Pull Request #109946 · python/cpython · GitHub
Skip to content

gh-109700: Improve stress tests for interpreter creation - #109946

Merged
serhiy-storchaka merged 7 commits into
python:mainfrom
serhiy-storchaka:test_interpreters-test_create_many_threaded
May 4, 2025
Merged

gh-109700: Improve stress tests for interpreter creation#109946
serhiy-storchaka merged 7 commits into
python:mainfrom
serhiy-storchaka:test_interpreters-test_create_many_threaded

Conversation

@serhiy-storchaka

@serhiy-storchaka serhiy-storchaka commented Sep 27, 2023

Copy link
Copy Markdown
Member
  • Ensure that destructors are called in the test that created interpreters, not after finishing it.
  • Try to create interpreters simultaneously in test_create_many_threaded.
  • Mark test_create_many_threaded that requires over 6GB of memory as bigmemtest.

@bedevere-app bedevere-app Bot added the tests Tests in the Lib/test dir label Sep 27, 2023
@serhiy-storchaka serhiy-storchaka changed the title WIP: gh-109700: Make stress tests on interpreter creation more stressful gh-109700: Improve stress tests on interpreter creation Nov 8, 2023
@serhiy-storchaka serhiy-storchaka added skip news needs backport to 3.11 only security fixes needs backport to 3.12 only security fixes 🔨 test-with-buildbots Test PR w/ buildbots; report in status section and removed needs backport to 3.11 only security fixes labels Nov 8, 2023
@bedevere-bot

Copy link
Copy Markdown

@bedevere-bot bedevere-bot removed the 🔨 test-with-buildbots Test PR w/ buildbots; report in status section label Nov 8, 2023
@serhiy-storchaka
serhiy-storchaka marked this pull request as ready for review November 8, 2023 21:35
@serhiy-storchaka serhiy-storchaka changed the title gh-109700: Improve stress tests on interpreter creation gh-109700: Improve stress tests for interpreter creation Nov 8, 2023
@serhiy-storchaka

Copy link
Copy Markdown
Member Author

While leaks are not yet fixed, we want to minimize effect of these tests on other tests.

@serhiy-storchaka serhiy-storchaka added the needs backport to 3.13 bugs and security fixes label May 9, 2024
@Yhg1s Yhg1s removed the needs backport to 3.12 only security fixes label Apr 8, 2025
@serhiy-storchaka

Copy link
Copy Markdown
Member Author
  • Ensure that destructors are called in the test that created interpreters, not after finishing it.
  • Try to create/run interpreters in threads simultaneously.
  • Mark tests that requires over 6GB of memory with bigmemtest.

@serhiy-storchaka
serhiy-storchaka merged commit 61b50a9 into python:main May 4, 2025
@miss-islington-app

Copy link
Copy Markdown

Thanks @serhiy-storchaka for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13.
🐍🍒⛏🤖

@serhiy-storchaka
serhiy-storchaka deleted the test_interpreters-test_create_many_threaded branch May 4, 2025 18:53
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request May 4, 2025
…nGH-109946)

* Ensure that destructors are called in the test that created interpreters, not after finishing it.
* Try to create/run interpreters in threads simultaneously.
* Mark tests that requires over 6GB of memory with bigmemtest.
(cherry picked from commit 61b50a9)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
@bedevere-app

bedevere-app Bot commented May 4, 2025

Copy link
Copy Markdown

GH-133391 is a backport of this pull request to the 3.13 branch.

@bedevere-app bedevere-app Bot removed the needs backport to 3.13 bugs and security fixes label May 4, 2025
serhiy-storchaka added a commit that referenced this pull request May 4, 2025
…09946) (GH-133391)

* Ensure that destructors are called in the test that created interpreters, not after finishing it.
* Try to create/run interpreters in threads simultaneously.
* Mark tests that requires over 6GB of memory with bigmemtest.
(cherry picked from commit 61b50a9)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
diegorusso added a commit to diegorusso/cpython that referenced this pull request May 4, 2025
* origin/main: (111 commits)
  pythongh-91048: Add filename and line number to external inspection routines (pythonGH-133385)
  pythongh-131178: Add tests for `ast` command-line interface (python#133329)
  Regenerate pcbuild.sln in Visual Studio 2022 (python#133394)
  pythongh-133042: disable HACL* HMAC on Emscripten (python#133064)
  pythongh-133351: Fix remote PDB's multi-line block tab completion (python#133387)
  pythongh-109700: Improve stress tests for interpreter creation (pythonGH-109946)
  pythongh-81793: Skip tests for os.link() to symlink on Android (pythonGH-133388)
  pythongh-126835: Rename `ast_opt.c` to `ast_preprocess.c` and related stuff after moving const folding to the peephole optimizier (python#131830)
  pythongh-91048: Relax test_async_global_awaited_by to fix flakyness (python#133368)
  pythongh-132457: make staticmethod and classmethod generic (python#132460)
  pythongh-132805: annotationlib: Fix handling of non-constant values in FORWARDREF (python#132812)
  pythongh-132426: Add get_annotate_from_class_namespace replacing get_annotate_function (python#132490)
  pythongh-81793: Always call linkat() from os.link(), if available (pythonGH-132517)
  pythongh-122559: Synchronize C and Python implementation of the io module about pickling (pythonGH-122628)
  pythongh-69605: Add PyREPL import autocomplete feature to 'What's New' (python#133358)
  bpo-44172: Keep reference to original window in curses subwindow objects (pythonGH-26226)
  pythonGH-133231: Changes to executor management to support proposed `sys._jit` module (pythonGH-133287)
  pythongh-133363: Fix Cmd completion for lines beginning with `! ` (python#133364)
  pythongh-132983: Introduce `_zstd` bindings module (pythonGH-133027)
  pythonGH-91048: Add utils for printing the call stack for asyncio tasks (python#133284)
  ...
@bedevere-bot

Copy link
Copy Markdown

Pranjal095 pushed a commit to Pranjal095/cpython that referenced this pull request Jul 12, 2025
…nGH-109946)

* Ensure that destructors are called in the test that created interpreters, not after finishing it.
* Try to create/run interpreters in threads simultaneously.
* Mark tests that requires over 6GB of memory with bigmemtest.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip news tests Tests in the Lib/test dir

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants