Open
Description
Hello.
We are currently trying to rebuild this package in Fedora for Python 3.11, but we see some suspicious test failures that occur with Python 3.11 as well as with Python 3.10.
The failures look like this:
On i686:
________________________ test_command_line_command_flag ________________________
def test_command_line_command_flag():
pytest.importorskip("numpy")
output = subprocess.check_output(
[sys.executable, "-m", "threadpoolctl", "-c", "import numpy"]
)
cli_info = json.loads(output.decode("utf-8"))
this_process_info = threadpool_info()
for lib_info in cli_info:
> assert lib_info in this_process_info
E AssertionError: assert {'filepath': '/usr/lib/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 6, 'prefix': 'libgomp', ...} in [{'architecture': 'Nehalem', 'filepath': '/usr/lib/libopenblaso-r0.3.20.so', 'internal_api': 'openblas', 'num_threads': 30, ...}, {'filepath': '/usr/lib/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 30, 'prefix': 'libgomp', ...}]
tests/test_threadpoolctl.py:547: AssertionError
________________________ test_command_line_import_flag _________________________
@pytest.mark.skipif(
sys.version_info < (3, 7), reason="need recent subprocess.run options"
)
def test_command_line_import_flag():
result = subprocess.run(
[
sys.executable,
"-m",
"threadpoolctl",
"-i",
"numpy",
"scipy.linalg",
"invalid_package",
"numpy.invalid_sumodule",
],
capture_output=True,
check=True,
encoding="utf-8",
)
cli_info = json.loads(result.stdout)
this_process_info = threadpool_info()
for lib_info in cli_info:
> assert lib_info in this_process_info
E AssertionError: assert {'filepath': '/usr/lib/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 6, 'prefix': 'libgomp', ...} in [{'architecture': 'Nehalem', 'filepath': '/usr/lib/libopenblaso-r0.3.20.so', 'internal_api': 'openblas', 'num_threads': 30, ...}, {'filepath': '/usr/lib/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 30, 'prefix': 'libgomp', ...}]
tests/test_threadpoolctl.py:573: AssertionError
On x86_64
________________________ test_command_line_command_flag ________________________
def test_command_line_command_flag():
pytest.importorskip("numpy")
output = subprocess.check_output(
[sys.executable, "-m", "threadpoolctl", "-c", "import numpy"]
)
cli_info = json.loads(output.decode("utf-8"))
this_process_info = threadpool_info()
for lib_info in cli_info:
> assert lib_info in this_process_info
E AssertionError: assert {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 6, 'prefix': 'libgomp', ...} in [{'architecture': 'SkylakeX', 'filepath': '/usr/lib64/libopenblaso-r0.3.20.so', 'internal_api': 'openblas', 'num_threads': 30, ...}, {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 30, 'prefix': 'libgomp', ...}]
tests/test_threadpoolctl.py:547: AssertionError
________________________ test_command_line_import_flag _________________________
@pytest.mark.skipif(
sys.version_info < (3, 7), reason="need recent subprocess.run options"
)
def test_command_line_import_flag():
result = subprocess.run(
[
sys.executable,
"-m",
"threadpoolctl",
"-i",
"numpy",
"scipy.linalg",
"invalid_package",
"numpy.invalid_sumodule",
],
capture_output=True,
check=True,
encoding="utf-8",
)
cli_info = json.loads(result.stdout)
this_process_info = threadpool_info()
for lib_info in cli_info:
> assert lib_info in this_process_info
E AssertionError: assert {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 6, 'prefix': 'libgomp', ...} in [{'architecture': 'SkylakeX', 'filepath': '/usr/lib64/libopenblaso-r0.3.20.so', 'internal_api': 'openblas', 'num_threads': 30, ...}, {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 30, 'prefix': 'libgomp', ...}]
tests/test_threadpoolctl.py:573: AssertionError
On ppc64le
________________________ test_command_line_command_flag ________________________
def test_command_line_command_flag():
pytest.importorskip("numpy")
output = subprocess.check_output(
[sys.executable, "-m", "threadpoolctl", "-c", "import numpy"]
)
cli_info = json.loads(output.decode("utf-8"))
this_process_info = threadpool_info()
for lib_info in cli_info:
> assert lib_info in this_process_info
E AssertionError: assert {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 8, 'prefix': 'libgomp', ...} in [{'architecture': 'POWER9', 'filepath': '/usr/lib64/libopenblaso-r0.3.20.so', 'internal_api': 'openblas', 'num_threads': 40, ...}, {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 40, 'prefix': 'libgomp', ...}]
tests/test_threadpoolctl.py:547: AssertionError
________________________ test_command_line_import_flag _________________________
@pytest.mark.skipif(
sys.version_info < (3, 7), reason="need recent subprocess.run options"
)
def test_command_line_import_flag():
result = subprocess.run(
[
sys.executable,
"-m",
"threadpoolctl",
"-i",
"numpy",
"scipy.linalg",
"invalid_package",
"numpy.invalid_sumodule",
],
capture_output=True,
check=True,
encoding="utf-8",
)
cli_info = json.loads(result.stdout)
this_process_info = threadpool_info()
for lib_info in cli_info:
> assert lib_info in this_process_info
E AssertionError: assert {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 8, 'prefix': 'libgomp', ...} in [{'architecture': 'POWER9', 'filepath': '/usr/lib64/libopenblaso-r0.3.20.so', 'internal_api': 'openblas', 'num_threads': 40, ...}, {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 40, 'prefix': 'libgomp', ...}]
tests/test_threadpoolctl.py:573: AssertionError
On s390x:
________________________ test_command_line_command_flag ________________________
def test_command_line_command_flag():
pytest.importorskip("numpy")
output = subprocess.check_output(
[sys.executable, "-m", "threadpoolctl", "-c", "import numpy"]
)
cli_info = json.loads(output.decode("utf-8"))
this_process_info = threadpool_info()
for lib_info in cli_info:
> assert lib_info in this_process_info
E AssertionError: assert {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 2, 'prefix': 'libgomp', ...} in [{'architecture': 'Z14', 'filepath': '/usr/lib64/libopenblaso-r0.3.20.so', 'internal_api': 'openblas', 'num_threads': 64, ...}, {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 64, 'prefix': 'libgomp', ...}]
tests/test_threadpoolctl.py:547: AssertionError
________________________ test_command_line_import_flag _________________________
@pytest.mark.skipif(
sys.version_info < (3, 7), reason="need recent subprocess.run options"
)
def test_command_line_import_flag():
result = subprocess.run(
[
sys.executable,
"-m",
"threadpoolctl",
"-i",
"numpy",
"scipy.linalg",
"invalid_package",
"numpy.invalid_sumodule",
],
capture_output=True,
check=True,
encoding="utf-8",
)
cli_info = json.loads(result.stdout)
this_process_info = threadpool_info()
for lib_info in cli_info:
> assert lib_info in this_process_info
E AssertionError: assert {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 2, 'prefix': 'libgomp', ...} in [{'architecture': 'Z14', 'filepath': '/usr/lib64/libopenblaso-r0.3.20.so', 'internal_api': 'openblas', 'num_threads': 64, ...}, {'filepath': '/usr/lib64/libgomp.so.1.0.0', 'internal_api': 'openmp', 'num_threads': 64, 'prefix': 'libgomp', ...}]
tests/test_threadpoolctl.py:573: AssertionError
The tests pass on aarch64. test_architecture was skipped.
It appears the num_threads value is different. Is that a real problem or just bad test expectations? Thanks
Metadata
Metadata
Assignees
Labels
No labels