Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 31 additions & 33 deletions derivations/arrayfire/default.nix
Original file line number Diff line number Diff line change
@@ -1,44 +1,42 @@
{ stdenv
, pkgs
, fetchurl
, fftw
, fftwFloat
, fetchFromGitHub
, symlinkJoin
, cmake
, boost162
, boost17x
, blas
, pkgconfig
, pkg-config
}:

let
version = "3.6.2";
blasName = (builtins.parseDrvName blas.name).name;
in
in stdenv.mkDerivation rec {
pname = "arrayfire";
version = "3.7.1";

stdenv.mkDerivation {
name = "arrayfire";

src = fetchurl {
url = "http://arrayfire.com/arrayfire_source/arrayfire-full-${version}.tar.bz2";
sha256 = "00p1d56s4qd3ll5f0980zwpw3hy8m6v0gd7v34rim4bkmslb8gvg";
src = fetchFromGitHub {
owner= "arrayfire";
repo= "arrayfire";
rev = "v${version}";
sha256 = "179mbh08z040kfy31lg5ay2jvsyal890jg98ki6cq2k9wxvr24v0";
fetchSubmodules = true;
};

nativeBuildInputs = stdenv.lib.optional (blasName != "mkl") pkgs.fftw.dev ;
buildInputs =
[ boost162
pkgconfig
cmake
blas
] ++ stdenv.lib.optional (blasName != "mkl") pkgs.fftw;
nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [
boost17x blas
] ++ stdenv.lib.optional (blasName != "mkl") fftw;

cmakeFlags =
[ "-DCMAKE_BUILD_TYPE=Release"
"-DAF_BUILD_CUDA=OFF"
"-DAF_BUILD_OPENCL=OFF"
"-DAF_BUILD_EXAMPLES=OFF"
"-DAF_WITH_GRAPHICS=OFF"
"-DAF_WITH_IMAGEIO=OFF"
"-DAF_WITH_LOGGING=OFF"
"-DBUILD_TESTING=OFF" ]
++
cmakeFlags = [
"-DAF_BUILD_CUDA=OFF"
"-DAF_BUILD_OPENCL=OFF"
"-DAF_BUILD_EXAMPLES=OFF"
"-DAF_WITH_GRAPHICS=OFF"
"-DAF_WITH_IMAGEIO=OFF"
"-DAF_WITH_LOGGING=OFF"
"-DBUILD_TESTING=OFF"
] ++
stdenv.lib.optionals (blasName == "mkl") (
let
mkl_lp64 = "${blas}/lib/intel64/libmkl_intel_lp64.so";
Expand All @@ -50,16 +48,16 @@ stdenv.mkDerivation {
"-DLAPACKE_LIB=${mkl_lp64}"
"-DLAPACK_LIB=${mkl_lp64}"
"-DLAPACKE_INCLUDES=${blas}/include"
"-DMKL_THREAD_LAYER=IntelOpenMP"

"-DUSE_CPU_MKL=ON"
])
++
stdenv.lib.optionals (blasName != "mkl")
[ "-DFFTWF_LIBRARY=${pkgs.fftwFloat}/lib/libfftw3f.so"
[ "-DFFTWF_LIBRARY=${fftwFloat}/lib/libfftw3f.so"
];

patches = [ ./patch-08a601f.patch ./rewrite_OMP_streq.patch ];
preConfigure = ''
cmakeFlagsArray+=("-DMKL_THREAD_LAYER=Intel OpenMP")
'';

meta = with stdenv.lib; {
description = "A general-purpose computational tool that simplifies the process of developing software that targets parallel and massively-parallel architectures including CPUs, GPUs, and other hardware acceleration devices";
Expand Down
9 changes: 0 additions & 9 deletions derivations/arrayfire/patch-08a601f.patch

This file was deleted.

14 changes: 0 additions & 14 deletions derivations/arrayfire/rewrite_OMP_streq.patch

This file was deleted.

26 changes: 0 additions & 26 deletions derivations/cereal/default.nix

This file was deleted.

10 changes: 4 additions & 6 deletions derivations/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,9 @@ self: super:
mkl-dnn = super.callPackage ./mkl-dnn/default.nix { blas = super.mkl; } ;
arrayfire = super.callPackage ./arrayfire/default.nix { blas = super.mkl; } ;
cereal-develop = super.callPackage ./cereal/default.nix {} ;
flashlight = super.callPackage ./flashlight/default.nix
{ arrayfire = arrayfire;
cereal-develop = cereal-develop;
blas = super.mkl;
mkl-dnn = mkl-dnn;
} ;
flashlight = super.callPackage ./flashlight/default.nix {
inherit arrayfire cereal mkl-dnn;
blas = super.mkl;
};
kenlm = super.callPackage ./kenlm/default.nix {} ;
}
36 changes: 16 additions & 20 deletions derivations/flashlight/default.nix
Original file line number Diff line number Diff line change
@@ -1,42 +1,38 @@
{ stdenv
, fetchgit
, fetchFromGitHub
, arrayfire
, cereal-develop
, cereal
, cmake
, gloo
, mkl-dnn
, mpich
, blas
}:

let
revision = "6ec9dc7e9f57400801794b2e2f02317031883268";
in

stdenv.mkDerivation {
name = "flashlight";

src = fetchgit {
url = "https://github.com/facebookresearch/flashlight.git";
rev = revision;
sha256 = "1afhyjfwf583j3q27arjmv4783hiqhjabqqjvni7clv1gccqc4m3";
src = fetchFromGitHub {
owner = "facebookresearch";
repo = "flashlight";
rev = "716d1b0913be1c26e446ed37450a5081c371a749";
sha256 = "1lglk1j4bk0i1ax4nhvaddf9724739im9wcab0rlymc3nyj7k003";
};

enableParallelBuilding = true;

nativeBuildInputs = [ arrayfire ];
buildInputs = [ cmake blas gloo mpich ];
nativeBuildInputs = [ cmake ];
buildInputs = [ arrayfire blas gloo mpich cereal ];

cmakeFlags =
[ "-DCEREAL_INCLUDE_DIR=${cereal-develop}/include"
"-DMKLDNN_ROOT=${mkl-dnn}"
NIX_CFLAGS_COMPILE = [ "-I${cereal}/include/cereal" ];

"-DFLASHLIGHT_BACKEND=CPU"
"-DFL_BUILD_TESTS=OFF"
"-DFL_BUILD_EXAMPLES=OFF"
];
cmakeFlags = [
"-DMKLDNN_ROOT=${mkl-dnn}"

patches = [ ./remove-cereal-external.patch ];
"-DFLASHLIGHT_BACKEND=CPU"
"-DFL_BUILD_TESTS=OFF"
"-DFL_BUILD_EXAMPLES=OFF"
];

meta = with stdenv.lib; {
description = "A fast, flexible machine learning library written entirely in C++";
Expand Down
19 changes: 0 additions & 19 deletions derivations/flashlight/remove-cereal-external.patch

This file was deleted.

32 changes: 15 additions & 17 deletions derivations/kenlm/default.nix
Original file line number Diff line number Diff line change
@@ -1,38 +1,36 @@
{ fetchgit
{ fetchFromGitHub
, stdenv
, cmake
, boost162
, boost
, lzma
}:

let
commit = "e47088ddfae810a5ee4c8a9923b5f8071bed1ae8";
in

stdenv.mkDerivation {
name = "kenlm";
src = fetchgit {
url = "https://github.com/kpu/kenlm.git";
rev = commit;
sha256 = "0jzf58lpa5siha6jgbpgy0kfgdzwj5jxgz8fm2dp4szwfhmilhvr";

src = fetchFromGitHub {
owner = "kpu";
repo = "kenlm";
rev = "87e85e66c99ceff1fab2500a7c60c01da7315eec";
sha256 = "1qh16zc5wljn9l662ci9n7z683rwrmzs032f9adss84q0b1ldf4j";
};

enableParallelBuilding = true;
nativeBuildInputs = [ cmake boost ];

buildInputs = [ cmake boost162 lzma ];
buildInputs = [ lzma ];

installPhase = ''
make install
mkdir $out/lib
mkdir -p $out/{lib,include}
install lib/* $out/lib
pushd ..
find lm util -type f -iname '*.hh' -exec cp --parents '{}' $out/include/ \;
popd
'';


cmakeFlags = [ ];

meta = with stdenv.lib; {
description = "Language model inference code by Kenneth Heafield";
license = license.lgpl;
license = licenses.lgpl21;
homepage = "https://github.com/kpu/kenlm";
};
}
25 changes: 14 additions & 11 deletions derivations/mkl-dnn/default.nix
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{ stdenv
, fetchgit
, fetchFromGitHub
, autoreconfHook
, cmake
, curl
Expand All @@ -9,21 +9,24 @@

stdenv.mkDerivation {
name = "mkl-dnn";
src = fetchgit {
url = "https://github.com/intel/mkl-dnn.git";
rev = "7de7e5d02bf687f971e7668963649728356e0c20";
sha256 = "0j4za82k88s2k8wyh6aradh5i7196fj0xkcn8yagym5nbvdpd50c";

src = fetchFromGitHub {
owner = "intel";
repo = "mkl-dnn";
rev = "4bdffc2cb1c3d47df9604d35d2c7e5e47a13f1a6";
sha256 = "03dycq2x4ihfsps4flw570hdhmkr9p49s9rzsdzwhz0l6d6qvcrw";
};

enableParallelBuilding = true;

buildInputs = [ cmake blas ];
nativeBuildInputs = [ cmake blas ];

cmakeFlags =
[ "-DWITH_TEST=OFF"
"-WITH_EXAMPLE=OFF"
];
NIX_CFLAGS_COMPILE = [ "-Wno-error=stringop-truncation" ];

patches = [ ./patch.patch ];
cmakeFlags = [
"-DWITH_TEST=OFF"
"-WITH_EXAMPLE=OFF"
];

meta = with stdenv.lib; {
description = "An open-source performance library for deep-learning applications";
Expand Down
19 changes: 0 additions & 19 deletions derivations/mkl-dnn/patch.patch

This file was deleted.

Loading