summary refs log tree commit diff
diff options
context:
space:
mode:
authorArun Isaac <arunisaac@systemreboot.net>2021-05-08 18:33:05 +0530
committerArun Isaac <arunisaac@systemreboot.net>2021-05-15 13:25:33 +0530
commitfb8baf0c77a3ddfb8576c6a8aa63a14de8404f64 (patch)
tree59bf5bf47cc076813f2226421b7635f513aa8cfe
parent75530bb5033bb124f3e3f31427b6ed7fc9343c4d (diff)
downloadguix-fb8baf0c77a3ddfb8576c6a8aa63a14de8404f64.tar.gz
gnu: Add interbench.
* gnu/packages/benchmark.scm (interbench): New variable.
-rw-r--r--gnu/packages/benchmark.scm39
1 files changed, 39 insertions, 0 deletions
diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index 2fc4082ed1..b7bb332fc7 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2020 malte Frank Gerdes <malte.f.gerdes@gmail.com>
 ;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2020 Greg Hogan <code@greghogan.com>
+;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -353,3 +354,41 @@ Note: Locust will complain if the available open file descriptors limit for
 the user is too low.  To raise such limit on a Guix System, refer to
 @samp{info guix --index-search=pam-limits-service}.")
     (license license:expat)))
+
+(define-public interbench
+  (package
+    (name "interbench")
+    (version "0.31")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/ckolivas/interbench")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0ifnw8vnkcgrksx7g5d9ii4kjppqnk32lvrybdybmibyvag6zfdc"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f                      ; no tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'fix-broken-makefile
+           (lambda _
+             ;; Remove erroneous "-lm" target
+             (substitute* "Makefile"
+               (("hackbench.o -lm") "hackbench.o"))))
+         (delete 'configure)
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (install-file "interbench" (string-append out "/bin"))
+               (install-file "interbench.8" (string-append out "/share/man/man8"))))))))
+    (home-page "http://users.on.net/~ckolivas/interbench/")
+    (synopsis "Interactivity benchmark")
+    (description "interbench is designed to benchmark interactivity on Linux.
+It is designed to measure the effect of changes in Linux kernel design or
+system configuration changes such as CPU, I/O scheduler and filesystem changes
+and options.  With careful benchmarking, different hardware can be compared.")
+    (license license:gpl2+)))