aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-10-09 00:19:56 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-11-11 10:31:28 -0500
commit92c3d1c3d059d662f2e5dc1ecdce99f3eb13bfd0 (patch)
tree834f022b8b1da89e3fd3ffad7e7bacb7f84cd7ff /gnu
parenta91eaf1bdc0664a0514e0c5db0038e990da18bab (diff)
downloadguix-92c3d1c3d059d662f2e5dc1ecdce99f3eb13bfd0.tar.gz
guix-92c3d1c3d059d662f2e5dc1ecdce99f3eb13bfd0.zip
gnu: tensorflow: Enable parallel build (at least partially).
There are still many parts of the build that happen sequentially, but at least this hastens the long build somewhat. * gnu/packages/machine-learning.scm (tensorflow)[phases]: Remove trailing #t. {build-pip-package}: Honor the PARALLEL-BUILD? argument.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/machine-learning.scm14
1 files changed, 8 insertions, 6 deletions
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index d71428034d..11c9b0207e 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -1730,7 +1730,7 @@ Python.")
((guix build python-build-system)
#:select (python-version)))
#:imported-modules (,@%cmake-build-system-modules
- (guix build python-build-system))
+ (guix build python-build-system))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-source-file-times-to-1980
@@ -1853,8 +1853,7 @@ set(eigen_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR}/external/eigen_archive "
(("tf_core_cpu grpc") "tf_core_cpu"))
;; This directory is a dependency of many targets.
- (mkdir-p "protobuf")
- #t))
+ (mkdir-p "protobuf")))
(add-after 'configure 'unpack-third-party-sources
(lambda* (#:key inputs #:allow-other-keys)
;; This is needed to configure bundled packages properly.
@@ -1932,17 +1931,20 @@ COMPILE_FLAGS ${target_compile_flags} \
INSTALL_RPATH_USE_LINK_PATH TRUE \
INSTALL_RPATH " (assoc-ref outputs "out") "/lib)\n")))))
(add-after 'build 'build-pip-package
- (lambda* (#:key outputs #:allow-other-keys)
+ (lambda* (#:key outputs parallel-build? #:allow-other-keys)
(setenv "LDFLAGS"
(string-append "-Wl,-rpath="
(assoc-ref outputs "out") "/lib"))
- (invoke "make" "tf_python_build_pip_package")))
+ (invoke "make" "-j" (if parallel-build?
+ (number->string (parallel-job-count))
+ "1")
+ "tf_python_build_pip_package")))
(add-after 'build-pip-package 'install-python
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(wheel (car (find-files "../build/tf_python/dist/" "\\.whl$")))
(python-version (python-version
- (assoc-ref inputs "python"))))
+ (assoc-ref inputs "python"))))
(invoke "python" "-m" "pip" "install" wheel
(string-append "--prefix=" out))