gnu: Add xtensor-benchmark.
* gnu/packages/algebra.scm (xtensor-benchmark): New variable.
This commit is contained in:
parent
f5873949f3
commit
182b97dac0
1 changed files with 39 additions and 0 deletions
|
@ -1169,6 +1169,45 @@ (define-public xtensor
|
||||||
@end itemize")
|
@end itemize")
|
||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
|
(define-public xtensor-benchmark
|
||||||
|
(package
|
||||||
|
(inherit xtensor)
|
||||||
|
(name "xtensor-benchmark")
|
||||||
|
(arguments
|
||||||
|
`(#:configure-flags (list "-DBUILD_BENCHMARK=ON"
|
||||||
|
"-DDOWNLOAD_GBENCHMARK=OFF")
|
||||||
|
#:tests? #f
|
||||||
|
#:phases (modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'remove-march=native
|
||||||
|
(lambda _
|
||||||
|
(substitute* "benchmark/CMakeLists.txt"
|
||||||
|
(("-march=native") ""))))
|
||||||
|
(add-after 'unpack 'link-with-googlebenchmark
|
||||||
|
(lambda _
|
||||||
|
(substitute* "benchmark/CMakeLists.txt"
|
||||||
|
(("find_package\\(benchmark.*" all)
|
||||||
|
(string-append
|
||||||
|
all "\n"
|
||||||
|
"set(GBENCHMARK_LIBRARIES benchmark)\n")))))
|
||||||
|
(replace 'build
|
||||||
|
(lambda _
|
||||||
|
(invoke "make" "benchmark_xtensor" "-j"
|
||||||
|
(number->string (parallel-job-count)))))
|
||||||
|
(replace 'install
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
;; Install nothing but the executable.
|
||||||
|
(let ((out (assoc-ref outputs "out")))
|
||||||
|
(install-file "benchmark/benchmark_xtensor"
|
||||||
|
(string-append out "/bin"))))))))
|
||||||
|
(synopsis "Benchmarks of the xtensor library")
|
||||||
|
(native-inputs '())
|
||||||
|
(inputs
|
||||||
|
(modify-inputs (package-native-inputs xtensor)
|
||||||
|
(prepend googlebenchmark xsimd)))
|
||||||
|
|
||||||
|
;; Mark as tunable to take advantage of SIMD code in xsimd/xtensor.
|
||||||
|
(properties '((tunable? . #t)))))
|
||||||
|
|
||||||
(define-public gap
|
(define-public gap
|
||||||
(package
|
(package
|
||||||
(name "gap")
|
(name "gap")
|
||||||
|
|
Loading…
Reference in a new issue