From 051f8c1768a3f507a2ff71daa6ec5504dc02c604 Mon Sep 17 00:00:00 2001 From: John Huddleston Date: Mon, 3 Jun 2024 10:09:25 -0700 Subject: [PATCH] Fix OMP warnings in UMAP tests Explicitly sets the threading layer for Numba to a simple implementation that should always be available. UMAP uses Numba internally and, on some systems, the Numba threading layer can get set to an OpenMP (OMP) backend. Since Numba internally calls OMP with a function that is deprecated, OMP emits a deprecation warning. This warning is especially useless since we force UMAP to run with a single CPU. The main effect of this warning was to break our functional tests. For more details, see this Numba issue comment on GitHub: https://github.com/numba/numba/issues/5275#issuecomment-1002935625 --- tests/pathogen-embed-umap-with-distances.t | 4 ++++ tests/pathogen-embed-umap.t | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/tests/pathogen-embed-umap-with-distances.t b/tests/pathogen-embed-umap-with-distances.t index b10e1ec..f19f67f 100644 --- a/tests/pathogen-embed-umap-with-distances.t +++ b/tests/pathogen-embed-umap-with-distances.t @@ -1,3 +1,7 @@ +Always use the simplest Numba threading layer, to avoid lower-level OMP warnings. + + $ export NUMBA_THREADING_LAYER=workqueue + Get a distance matrix from a H3N2 HA alignment. $ pathogen-distance \ diff --git a/tests/pathogen-embed-umap.t b/tests/pathogen-embed-umap.t index 4d75c0d..41b66b7 100644 --- a/tests/pathogen-embed-umap.t +++ b/tests/pathogen-embed-umap.t @@ -1,3 +1,7 @@ +Always use the simplest Numba threading layer, to avoid lower-level OMP warnings. + + $ export NUMBA_THREADING_LAYER=workqueue + Run pathogen-embed with UMAP on a H3N2 HA alignment. $ pathogen-embed \