aboutsummaryrefslogtreecommitdiff
path: root/gn/packages/machine-learning.scm
diff options
context:
space:
mode:
authorEfraim Flashner2020-05-31 12:51:45 -0500
committerEfraim Flashner2020-05-31 12:51:45 -0500
commitc43d167ecdfe83de6c81f5718ccf21380f40c3b7 (patch)
tree7108819b8d0ee140a6074a2de37a488e7667a2f4 /gn/packages/machine-learning.scm
parentc2cbcf1d42e547fa90b4ca3555a696b73d99ef9d (diff)
downloadguix-bioinformatics-c43d167ecdfe83de6c81f5718ccf21380f40c3b7.tar.gz
gn: ratspub: Use optimized tensorflow library
Diffstat (limited to 'gn/packages/machine-learning.scm')
-rw-r--r--gn/packages/machine-learning.scm33
1 files changed, 33 insertions, 0 deletions
diff --git a/gn/packages/machine-learning.scm b/gn/packages/machine-learning.scm
new file mode 100644
index 0000000..dc9156a
--- /dev/null
+++ b/gn/packages/machine-learning.scm
@@ -0,0 +1,33 @@
+(define-module (gn packages machine-learning)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (guix utils)
+ #:use-module (gnu packages machine-learning))
+
+(define-public tensorflow-native
+ (package
+ (inherit tensorflow)
+ (name "tensorflow-native")
+ (arguments
+ (substitute-keyword-arguments (package-arguments tensorflow)
+ ;((#:substitutable? _ #f) #f)
+ ;((#:phases phases)
+ ; `(modify-phases ,phases
+ ; (add-after 'unpack 'hardcode-multicore-usage
+ ; (lambda _
+ ; (substitute* "tensorflow/core/protobuf/config.proto"
+ ; ;(("num_threads = 1") "num_threads = 28") ; 56/2 for penguin2
+ ; ;(("intra_op_parallelism_threads = 2")
+ ; ; "intra_op_parallelism_threads = 0")
+ ; ;(("inter_op_parallelism_threads = 5")
+ ; ; "inter_op_parallelism_threads = 0")
+ ; )
+ ; #t))))
+ ((#:configure-flags flags)
+ `(cons
+ "-Dtensorflow_OPTIMIZE_FOR_NATIVE_ARCH=ON"
+ (delete "-Dtensorflow_OPTIMIZE_FOR_NATIVE_ARCH=OFF"
+ ,flags)))))))
+
+(define-public tensowflow-native-instead-of-tensorflow
+ (package-input-rewriting/spec `(("tensorflow" . ,(const tensorflow-native)))))