guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

07/14: gnu: Add xsimd-benchmark.


From: guix-commits
Subject: 07/14: gnu: Add xsimd-benchmark.
Date: Sat, 1 Jan 2022 09:57:13 -0500 (EST)

civodul pushed a commit to branch master
in repository guix.

commit f5873949f36e7a6b8c045e01c724c1307a9217df
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Fri Dec 3 23:27:31 2021 +0100

    gnu: Add xsimd-benchmark.
    
    * gnu/packages/cpp.scm (xsmimd-benchmark): New variable.
---
 gnu/packages/cpp.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 123dfb8470..50c29b3389 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -324,6 +324,29 @@ operating on batches.")
 library for SIMD (Single Instruction, Multiple Data) with runtime dispatch.")
     (license license:asl2.0)))
 
+(define-public xsmimd-benchmark
+  (package
+    (inherit xsimd)
+    (name "xsimd-benchmark")
+    (arguments
+     `(#:configure-flags (list "-DBUILD_BENCHMARK=ON")
+       #:tests? #f
+       #:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'remove-march=native
+                    (lambda _
+                      (substitute* "benchmark/CMakeLists.txt"
+                        (("-march=native") ""))))
+                  (replace 'install
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      ;; Install nothing but the executable.
+                      (let ((out (assoc-ref outputs "out")))
+                        (install-file "benchmark/benchmark_xsimd"
+                                      (string-append out "/bin"))))))))
+    (synopsis "Benchmark of the xsimd library")
+
+    ;; Mark as tunable to take advantage of SIMD code in xsimd/xtensor.
+    (properties '((tunable? . #t)))))
+
 (define-public chaiscript
   (package
     (name "chaiscript")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]