gnu: Add eigen-benchmarks.
* gnu/packages/algebra.scm (eigen-benchmarks): New variable.
This commit is contained in:
parent
6756c64a8f
commit
6542e5713a
1 changed files with 38 additions and 0 deletions
|
@ -1044,6 +1044,44 @@ (define-public eigen
|
||||||
;; See 'COPYING.README' for details.
|
;; See 'COPYING.README' for details.
|
||||||
(license license:mpl2.0)))
|
(license license:mpl2.0)))
|
||||||
|
|
||||||
|
(define-public eigen-benchmarks
|
||||||
|
(package
|
||||||
|
(inherit eigen)
|
||||||
|
(name "eigen-benchmarks")
|
||||||
|
(arguments
|
||||||
|
'(#:phases (modify-phases %standard-phases
|
||||||
|
(delete 'configure)
|
||||||
|
(replace 'build
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(bin (string-append out "/bin")))
|
||||||
|
(define (compile file)
|
||||||
|
(format #t "compiling '~a'...~%" file)
|
||||||
|
(let ((target
|
||||||
|
(string-append bin "/"
|
||||||
|
(basename file ".cpp"))))
|
||||||
|
(invoke "c++" "-o" target file
|
||||||
|
"-I" ".." "-O2" "-g"
|
||||||
|
"-lopenblas" "-Wl,--as-needed")))
|
||||||
|
|
||||||
|
(mkdir-p bin)
|
||||||
|
(with-directory-excursion "bench"
|
||||||
|
;; There are more benchmarks, of varying quality.
|
||||||
|
;; Here we pick some that appear to be useful.
|
||||||
|
(for-each compile
|
||||||
|
'("benchBlasGemm.cpp"
|
||||||
|
"benchCholesky.cpp"
|
||||||
|
;;"benchEigenSolver.cpp"
|
||||||
|
"benchFFT.cpp"
|
||||||
|
"benchmark-blocking-sizes.cpp"))))))
|
||||||
|
(delete 'install))))
|
||||||
|
(inputs (list boost openblas))
|
||||||
|
|
||||||
|
;; Mark as tunable to take advantage of SIMD code in Eigen.
|
||||||
|
(properties '((tunable? . #t)))
|
||||||
|
|
||||||
|
(synopsis "Micro-benchmarks of the Eigen linear algebra library")))
|
||||||
|
|
||||||
(define-public eigen-for-tensorflow
|
(define-public eigen-for-tensorflow
|
||||||
(let ((changeset "fd6845384b86")
|
(let ((changeset "fd6845384b86")
|
||||||
(revision "1"))
|
(revision "1"))
|
||||||
|
|
Loading…
Reference in a new issue