| 1234567891011121314151617181920212223242526272829303132 |
- import os
- import textwrap
- import pytest
- from sklearn import __version__
- from sklearn.utils._openmp_helpers import _openmp_parallelism_enabled
- def test_openmp_parallelism_enabled():
- # Check that sklearn is built with OpenMP-based parallelism enabled.
- # This test can be skipped by setting the environment variable
- # ``SKLEARN_SKIP_OPENMP_TEST``.
- if os.getenv("SKLEARN_SKIP_OPENMP_TEST"):
- pytest.skip("test explicitly skipped (SKLEARN_SKIP_OPENMP_TEST)")
- base_url = "dev" if __version__.endswith(".dev0") else "stable"
- err_msg = textwrap.dedent("""
- This test fails because scikit-learn has been built without OpenMP.
- This is not recommended since some estimators will run in sequential
- mode instead of leveraging thread-based parallelism.
- You can find instructions to build scikit-learn with OpenMP at this
- address:
- https://scikit-learn.org/{}/developers/advanced_installation.html
- You can skip this test by setting the environment variable
- SKLEARN_SKIP_OPENMP_TEST to any value.
- """).format(base_url)
- assert _openmp_parallelism_enabled(), err_msg
|