From 5e614503ddc0182c7e036f2deaeee3de7b84cc91 Mon Sep 17 00:00:00 2001 From: mengdilin Date: Tue, 3 Sep 2024 13:01:51 -0700 Subject: [PATCH] Build SVE CI with openblas that was compiled with USE_OPENMP=1 (#3776) Summary: I noticed by default, conda install openblas installs `libopenblas-pthreads` on our SVE CI. This can be problematic as described in https://github.com/facebookresearch/faiss/wiki/Troubleshooting#surprising-faiss-openmp-and-openblas-interaction Updating installation of openblas to be more specific and use the version that works well with openmp. Sees version `0.3.27-openmp_h1b0c31a_0` for openblas instead of `pthread` Pull Request resolved: https://github.com/facebookresearch/faiss/pull/3776 Reviewed By: ramilbakhshyiev Differential Revision: D61856775 Pulled By: mengdilin fbshipit-source-id: 950bd68ba438d221b39d25b2d6e185bc61512243 --- .github/actions/build_cmake/action.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/actions/build_cmake/action.yml b/.github/actions/build_cmake/action.yml index 1492e6d691..2606ce9fec 100644 --- a/.github/actions/build_cmake/action.yml +++ b/.github/actions/build_cmake/action.yml @@ -36,7 +36,12 @@ runs: # install base packages for ARM64 if [ "${{ runner.arch }}" = "ARM64" ]; then - conda install -y -q -c conda-forge openblas gxx_linux-aarch64 sysroot_linux-aarch64 + # installing libmamba-solver is necessary for openblas=*=*openmp* + conda install --solver=classic conda-forge::conda-libmamba-solver conda-forge::libmamba conda-forge::libmambapy conda-forge::libarchive + + # installing openblas that was compiled with USE_OPENMP=1. + # Context: https://github.com/facebookresearch/faiss/wiki/Troubleshooting#surprising-faiss-openmp-and-openblas-interaction + conda install -y -q -c conda-forge openblas=*=*openmp* gxx_linux-aarch64 sysroot_linux-aarch64 fi # install base packages for X86_64