summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2020-03-09 19:25:08 +0100
committerGuix Patches Tester <>2020-03-09 18:27:09 +0000
commit289e95bff3c00299df295d8f8797155776a6ee65 (patch)
tree42619f2c811e1c6358a00fa84526048a5e7e3b44
parent4227a73189b78b0357f611cd1b1f3eab93677caa (diff)
downloadpatches-series-3124.tar
patches-series-3124.tar.gz
WIP: Add mxnet.series-3124
* gnu/packages/machine-learning.scm (mxnet): New variable.
-rw-r--r--gnu/packages/machine-learning.scm62
1 files changed, 62 insertions, 0 deletions
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 50c41dc113..9408c4b8e0 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -60,6 +60,8 @@
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages image)
+ #:use-module (gnu packages image-processing)
+ #:use-module (gnu packages jemalloc)
#:use-module (gnu packages linux)
#:use-module (gnu packages lisp-xyz)
#:use-module (gnu packages maths)
@@ -2121,3 +2123,63 @@ These include a barrier, broadcast, and allreduce.")
technique that can be used for visualisation similarly to t-SNE, but also for
general non-linear dimension reduction.")
(license license:bsd-3)))
+
+(define-public mxnet
+ (package
+ (name "mxnet")
+ (version "1.6.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/apache/incubator-mxnet")
+ (commit version)
+ ;; TODO: Test if possible to include system version of those deps:
+ ;; mkldnn
+ ;; openmp
+ (recursive? #t)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1jlk0a9kls4fxxq4sap21hk6k3vhqhlflx5jm8i2amwh1z22sj09"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:configure-flags '("-DUSE_CUDA=OFF")
+ #:parallel-build? #f ; TODO: Try rebuilding in parallel.
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; Skip tests that require internet access.
+ (invoke "ctest" "--timeout" "6000")))
+ ;; (add-before 'check 'increase-test-timeout
+ ;; (lambda _
+ ;; ;; TODO: Set right timeout.
+ ;; (setenv "CTEST_TEST_TIMEOUT" "6000")
+ ;; #t))
+ )))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("perl" ,perl)
+ ;; TODO: Use our gtest
+ ;; ("googletest" ,googletest)
+ ))
+ (inputs
+ `(("lapack" ,lapack)
+ ("openblas" ,openblas)
+ ("opencv" ,opencv)
+ ("jemalloc" ,jemalloc)))
+ (home-page "https://mxnet.apache.org/")
+ (synopsis "Distributed/Mobile Deep Learning")
+ (description
+ "Apache MXNet (incubating) is a deep learning framework. It allows you
+to mix symbolic and imperative programming. At its core, MXNet contains a
+dynamic dependency scheduler that automatically parallelizes both symbolic and
+imperative operations on the fly. A graph optimization layer on top of that
+makes symbolic execution fast and memory efficient. MXNet is portable and
+lightweight, scaling effectively to multiple GPUs and multiple machines.
+
+MXNet is more than a deep learning project. It is a collection of blue prints
+and guidelines for building deep learning systems, and interesting insights of
+DL systems for hackers.")
+ (license license:asl2.0)))