diff --git a/gbl.spec b/gbl.spec index 85a41c1a8ed..0b94b1facbf 100644 --- a/gbl.spec +++ b/gbl.spec @@ -2,6 +2,7 @@ ## INCLUDE cpp-standard %define tag 59c2d99ea96bc739321fd251096504c91467be24 Source: git+https://gitlab.desy.de/claus.kleinwort/general-broken-lines.git?obj=main/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}.tgz +Source99: scram-tools.file/tools/eigen/env BuildRequires: cmake Requires: eigen @@ -15,6 +16,7 @@ sed -i -e 's|CMAKE_CXX_STANDARD *11|CMAKE_CXX_STANDARD %{cms_cxx_standard}|' cp rm -rf build mkdir build cd build +source %{_sourcedir}/env cmake ../cpp \ -DCMAKE_INSTALL_PREFIX=%{i} \ @@ -22,11 +24,11 @@ cmake ../cpp \ -DCMAKE_VERBOSE_MAKEFILE=ON \ -DEIGEN3_INCLUDE_DIR=${EIGEN_ROOT}/include/eigen3 \ -DSUPPORT_ROOT=False \ - %ifarch x86_64 - -DCMAKE_CXX_FLAGS="-DEIGEN_MAX_ALIGN_BYTES=64 -msse3" - %else - -DCMAKE_CXX_FLAGS="-DEIGEN_MAX_ALIGN_BYTES=64" - %endif +%ifarch x86_64 + -DCMAKE_CXX_FLAGS="$CMS_EIGEN_CXX_FLAGS -msse3" +%else + -DCMAKE_CXX_FLAGS="$CMS_EIGEN_CXX_FLAGS" +%endif make %{makeprocesses} diff --git a/lwtnn.spec b/lwtnn.spec index 49f48f2f816..67a0aeb10f0 100644 --- a/lwtnn.spec +++ b/lwtnn.spec @@ -1,7 +1,9 @@ -### RPM external lwtnn 2.13 +### RPM external lwtnn 2.14.1 ## INCLUDE cpp-standard Source: https://github.com/lwtnn/lwtnn/archive/v%{realversion}.tar.gz +Source99: scram-tools.file/tools/eigen/env + BuildRequires: ninja cmake Requires: eigen boost @@ -13,11 +15,16 @@ Requires: eigen boost rm -rf ../build mkdir ../build cd ../build +source %{_sourcedir}/env cmake ../%{n}-%{realversion} \ -G Ninja \ -DCMAKE_CXX_COMPILER="g++" \ - -DCMAKE_CXX_FLAGS="-fPIC" \ +%ifarch x86_64 + -DCMAKE_CXX_FLAGS="-fPIC $CMS_EIGEN_CXX_FLAGS -msse3" \ +%else + -DCMAKE_CXX_FLAGS="-fPIC $CMS_EIGEN_CXX_FLAGS" \ + %endif -DCMAKE_INSTALL_PREFIX:PATH="%{i}" \ -DCMAKE_BUILD_TYPE=Release \ -DBUILTIN_BOOST=OFF \ diff --git a/opencv.spec b/opencv.spec index b82bc8c8a7d..625c60bb39c 100644 --- a/opencv.spec +++ b/opencv.spec @@ -6,6 +6,8 @@ %define github_user opencv Source0: git+https://github.com/%{github_user}/opencv.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&output=/%{n}-%{realversion}-%{tag}.tgz +Source99: scram-tools.file/tools/eigen/env + BuildRequires: cmake ninja Requires: python3 py3-numpy libpng libjpeg-turbo libtiff zlib eigen OpenBLAS @@ -16,6 +18,7 @@ Requires: python3 py3-numpy libpng libjpeg-turbo libtiff zlib eigen OpenBLAS rm -rf ../build mkdir ../build cd ../build +source %{_sourcedir}/env cmake ../%{n}-%{realversion} \ -GNinja \ @@ -30,6 +33,11 @@ cmake ../%{n}-%{realversion} \ -DPYTHON3_INCLUDE_DIR:PATH="${PYTHON3_ROOT}/include/python%{cms_python3_major_minor_version}" \ -DPYTHON3_LIBRARY:FILEPATH="${PYTHON3_ROOT}/lib/libpython%{cms_python3_major_minor_version}.so" \ -DCMAKE_BUILD_TYPE=Release \ +%ifarch x86_64 + -DCMAKE_CXX_FLAGS="$CMS_EIGEN_CXX_FLAGS -msse3" \ +%else + -DCMAKE_CXX_FLAGS="$CMS_EIGEN_CXX_FLAGS" \ +%endif -DCMAKE_PREFIX_PATH="${LIBPNG_ROOT};${LIBTIFF_ROOT};${LIBJPEG_TURBO_ROOT};${ZLIB_ROOT};${PYTHON3_ROOT};${PY2_NUMPY_ROOT};${PY3_NUMPY_ROOT};${EIGEN_ROOT};${OPENBLAS_ROOT}" ninja -v %{makeprocesses} diff --git a/pytorch.spec b/pytorch.spec index 5d58c9c5d42..ce5662310a4 100644 --- a/pytorch.spec +++ b/pytorch.spec @@ -8,6 +8,7 @@ Source: git+https://github.com/pytorch/pytorch.git?obj=%{branch}/%{tag}&export=%{n}-%{realversion}&submodules=1&output=/%{n}-%{realversion}.tgz Source1: FindEigen3.cmake Source2: FindFMT.cmake +Source99: scram-tools.file/tools/eigen/env Patch0: pytorch-ignore-different-cuda-include-dir Patch1: pytorch-missing-braces Patch2: pytorch-system-fmt @@ -25,6 +26,7 @@ Requires: cuda cudnn OpenBLAS zlib protobuf fmt py3-pybind11 %build cp %{_sourcedir}/FindEigen3.cmake %{_sourcedir}/FindFMT.cmake cmake/Modules/ rm -rf ../build && mkdir ../build && cd ../build +source %{_sourcedir}/env USE_CUDA=OFF %if "%{cmsos}" != "slc7_aarch64" @@ -74,6 +76,11 @@ cmake ../%{n}-%{realversion} \ -DUSE_SYSTEM_FXDIV=ON \ -DUSE_SYSTEM_PYBIND11=ON \ -DUSE_SYSTEM_BENCHMARK=ON \ +%ifarch x86_64 + -DCMAKE_CXX_FLAGS="$CMS_EIGEN_CXX_FLAGS -msse3" \ +%else + -DCMAKE_CXX_FLAGS="$CMS_EIGEN_CXX_FLAGS" \ +%endif -DCMAKE_PREFIX_PATH="%{cmake_prefix_path}" \ -DPYTHON_EXECUTABLE=${PYTHON3_ROOT}/bin/python3 diff --git a/scram-tools.file/tools/eigen/eigen.xml b/scram-tools.file/tools/eigen/eigen.xml index 762356e286c..a2725ddbf2c 100644 --- a/scram-tools.file/tools/eigen/eigen.xml +++ b/scram-tools.file/tools/eigen/eigen.xml @@ -4,7 +4,6 @@ - - + diff --git a/scram-tools.file/tools/eigen/env.file b/scram-tools.file/tools/eigen/env.file new file mode 100644 index 00000000000..386dfbb054d --- /dev/null +++ b/scram-tools.file/tools/eigen/env.file @@ -0,0 +1 @@ +export CMS_EIGEN_CXX_FLAGS="-DEIGEN_DONT_PARALLELIZE -DEIGEN_MAX_ALIGN_BYTES=64" diff --git a/scram-tools.file/tools/eigen/env.sh b/scram-tools.file/tools/eigen/env.sh new file mode 100755 index 00000000000..a928c01b2d3 --- /dev/null +++ b/scram-tools.file/tools/eigen/env.sh @@ -0,0 +1,2 @@ +#!/bin/bash -e +source ${SCRAM_TOOL_SOURCE_DIR}/env.file diff --git a/vectorization/cmsdist_packages.py b/vectorization/cmsdist_packages.py index ac3e599c1cf..39206d73077 100755 --- a/vectorization/cmsdist_packages.py +++ b/vectorization/cmsdist_packages.py @@ -19,6 +19,9 @@ "OpenBLAS", "rivet", "gbl", + "lwtnn", + "opencv", + "pytorch", ] VALID_TARGETS = { "nehalem": "-march=nehalem",