From a0f30da0088b3a32ac4fdbde6ef3c9a1632e64d6 Mon Sep 17 00:00:00 2001 From: misuzu Date: Thu, 15 Jun 2023 16:16:06 +0300 Subject: ctranslate2: add withOneDNN, withOpenblas, withRuy Disable withOneDNN by default --- pkgs/development/libraries/ctranslate2/default.nix | 26 ++++++++++++++-------- 1 file changed, 17 insertions(+), 9 deletions(-) (limited to 'pkgs/development/libraries/ctranslate2') diff --git a/pkgs/development/libraries/ctranslate2/default.nix b/pkgs/development/libraries/ctranslate2/default.nix index cdfbcc3ebcc..2491fee0b2b 100644 --- a/pkgs/development/libraries/ctranslate2/default.nix +++ b/pkgs/development/libraries/ctranslate2/default.nix @@ -4,9 +4,12 @@ , cmake , darwin # Accelerate , llvmPackages # openmp -, oneDNN -, openblas , withMkl ? false, mkl +# Enabling both withOneDNN and withOpenblas is broken +# https://github.com/OpenNMT/CTranslate2/issues/1294 +, withOneDNN ? false, oneDNN +, withOpenblas ? true, openblas +, withRuy ? true }: let @@ -30,19 +33,24 @@ stdenv.mkDerivation rec { cmakeFlags = [ # https://opennmt.net/CTranslate2/installation.html#build-options - "-DWITH_DNNL=OFF" # requires oneDNN>=3.0 - "-DWITH_OPENBLAS=ON" + # https://github.com/OpenNMT/CTranslate2/blob/54810350e662ebdb01ecbf8e4a746f02aeff1dd7/python/tools/prepare_build_environment_linux.sh#L53 + # https://github.com/OpenNMT/CTranslate2/blob/59d223abcc7e636c1c2956e62482bc3299cc7766/python/tools/prepare_build_environment_macos.sh#L12 + "-DOPENMP_RUNTIME=COMP" + "-DWITH_DNNL=${cmakeBool withOneDNN}" + "-DWITH_OPENBLAS=${cmakeBool withOpenblas}" + "-DWITH_RUY=${cmakeBool withRuy}" "-DWITH_MKL=${cmakeBool withMkl}" ] ++ lib.optional stdenv.isDarwin "-DWITH_ACCELERATE=ON"; - buildInputs = [ - llvmPackages.openmp - openblas - oneDNN - ] ++ lib.optional withMkl [ + buildInputs = lib.optionals withMkl [ mkl + ] ++ lib.optionals withOneDNN [ + oneDNN + ] ++ lib.optionals withOpenblas [ + openblas ] ++ lib.optionals stdenv.isDarwin [ + llvmPackages.openmp darwin.apple_sdk.frameworks.Accelerate ] ++ lib.optionals (stdenv.isDarwin && stdenv.isx86_64) [ darwin.apple_sdk.frameworks.CoreGraphics -- cgit 1.4.1