Skip to content

Improving test tools and strategies for multi-threading #56

Open

Description

The suggested plan of attack and documented test strategies on https://py-free-threading.github.io are up-to-date given what we know and the tools we have available. However, the testing strategies for uncovering thread-safety issues are falling short of what we need. Improving this should be a priority.

Ideas that need implementing or protyping:

  • create a decorator to easily run a pytest test case in parallel (can be based on the test patterns for threading and concurrent.futures in this doc section, and look something like the run_in_parallel from scikit-image)
  • a pytest plugin to all tests in a full test suite in parallel (e.g. using the decorator from the task above)
  • use ThreadSanitizer on a Python package (it has proven useful for CPython)
    • set up for NumPy and figure out how useful it is (what does it catch, what's the false positive rate)
    • document how to do this with Meson and CMake
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions