Update benchmark results
This commit updates the benchmark results for various examples. The benchmark times and repeat counts have been adjusted to reflect current performance characteristics.
This commit is contained in:
+2
-2
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 2.5us
|
;; Benchmark: 2.2us
|
||||||
;; Benchmark-Repeat: 804
|
;; Benchmark-Repeat: 935
|
||||||
;; Output: 120
|
;; Output: 120
|
||||||
(do
|
(do
|
||||||
(def factorial (fn [n acc]
|
(def factorial (fn [n acc]
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
;; Closure Scope Test
|
;; Closure Scope Test
|
||||||
;; Benchmark: 436ns
|
;; Benchmark: 374ns
|
||||||
;; Benchmark-Repeat: 4610
|
;; Benchmark-Repeat: 5431
|
||||||
;; Output: 15
|
;; Output: 15
|
||||||
(do
|
(do
|
||||||
(def make-adder (fn [x]
|
(def make-adder (fn [x]
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
;; Benchmark: 129ns
|
;; Benchmark: 92ns
|
||||||
;; Benchmark-Repeat: 15551
|
;; Benchmark-Repeat: 21633
|
||||||
;; Output: 5
|
;; Output: 5
|
||||||
(((fn [x] (fn [] x)) 5))
|
(((fn [x] (fn [] x)) 5))
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 129ns
|
;; Benchmark: 92ns
|
||||||
;; Benchmark-Repeat: 15494
|
;; Benchmark-Repeat: 21729
|
||||||
;; Output: 5
|
;; Output: 5
|
||||||
(do
|
(do
|
||||||
(def f (fn [x] (fn [] x)))
|
(def f (fn [x] (fn [] x)))
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 129ns
|
;; Benchmark: 91ns
|
||||||
;; Benchmark-Repeat: 15458
|
;; Benchmark-Repeat: 21971
|
||||||
;; Output: 42
|
;; Output: 42
|
||||||
(do
|
(do
|
||||||
(def f (fn [a] (fn [b] (fn [c] (+ a (+ b c))))))
|
(def f (fn [a] (fn [b] (fn [c] (+ a (+ b c))))))
|
||||||
|
|||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
;; Complex Data Structure Test
|
;; Complex Data Structure Test
|
||||||
;; Benchmark: 53.5us
|
;; Benchmark: 46.5us
|
||||||
;; Benchmark-Repeat: 39
|
;; Benchmark-Repeat: 44
|
||||||
;; Output: {:name "Fibonacci", :input 10, :output 55}
|
;; Output: {:name "Fibonacci", :input 10, :output 55}
|
||||||
(do
|
(do
|
||||||
(def fib (fn [n]
|
(def fib (fn [n]
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 326ns
|
;; Benchmark: 289ns
|
||||||
;; Benchmark-Repeat: 6129
|
;; Benchmark-Repeat: 6962
|
||||||
;; examples/def_local_inlining.myc
|
;; examples/def_local_inlining.myc
|
||||||
;; Demonstrates potential for DefLocal-Inlining (Phase 2.5)
|
;; Demonstrates potential for DefLocal-Inlining (Phase 2.5)
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 969ns
|
;; Benchmark: 723ns
|
||||||
;; Benchmark-Repeat: 2078
|
;; Benchmark-Repeat: 2781
|
||||||
;; Comprehensive Destructuring Test
|
;; Comprehensive Destructuring Test
|
||||||
;; Covers: Nested tuples, mixed params, dynamic passing
|
;; Covers: Nested tuples, mixed params, dynamic passing
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 129ns
|
;; Benchmark: 91ns
|
||||||
;; Benchmark-Repeat: 15452
|
;; Benchmark-Repeat: 22134
|
||||||
;; Output: 36
|
;; Output: 36
|
||||||
(do
|
(do
|
||||||
;; Excessive capture test
|
;; Excessive capture test
|
||||||
|
|||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
;; Fibonacci Recursive
|
;; Fibonacci Recursive
|
||||||
;; Benchmark: 51.5us
|
;; Benchmark: 45.9us
|
||||||
;; Benchmark-Repeat: 40
|
;; Benchmark-Repeat: 45
|
||||||
;; Output: 55
|
;; Output: 55
|
||||||
(do
|
(do
|
||||||
(def fib (fn [n]
|
(def fib (fn [n]
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
;; Benchmark: 129ns
|
;; Benchmark: 92ns
|
||||||
;; Benchmark-Repeat: 15624
|
;; Benchmark-Repeat: 22073
|
||||||
;; Output: 30
|
;; Output: 30
|
||||||
(+ 10 20)
|
(+ 10 20)
|
||||||
|
|||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
;; Higher-Order Function Example
|
;; Higher-Order Function Example
|
||||||
;; Benchmark: 130ns
|
;; Benchmark: 90ns
|
||||||
;; Benchmark-Repeat: 15499
|
;; Benchmark-Repeat: 21671
|
||||||
;; Output: 25
|
;; Output: 25
|
||||||
(do
|
(do
|
||||||
(def apply (fn [f x] (f x)))
|
(def apply (fn [f x] (f x)))
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 401ns
|
;; Benchmark: 352ns
|
||||||
;; Benchmark-Repeat: 5016
|
;; Benchmark-Repeat: 5696
|
||||||
;; Financial DSL Macro example
|
;; Financial DSL Macro example
|
||||||
;; Demonstrates generating complex records from simple parameters.
|
;; Demonstrates generating complex records from simple parameters.
|
||||||
;; Output: {:price 100, :size 2, :total 200}
|
;; Output: {:price 100, :size 2, :total 200}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 236ns
|
;; Benchmark: 192ns
|
||||||
;; Benchmark-Repeat: 8524
|
;; Benchmark-Repeat: 10538
|
||||||
;; Output: 5
|
;; Output: 5
|
||||||
(do
|
(do
|
||||||
(def y 1)
|
(def y 1)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 195ns
|
;; Benchmark: 154ns
|
||||||
;; Benchmark-Repeat: 10247
|
;; Benchmark-Repeat: 12979
|
||||||
;; Nested Macro and Arithmetic example
|
;; Nested Macro and Arithmetic example
|
||||||
;; Output: 81
|
;; Output: 81
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 237ns
|
;; Benchmark: 201ns
|
||||||
;; Benchmark-Repeat: 8394
|
;; Benchmark-Repeat: 9967
|
||||||
;; Macro Splicing example
|
;; Macro Splicing example
|
||||||
;; Demonstrates unrolling a list into another list.
|
;; Demonstrates unrolling a list into another list.
|
||||||
;; Output: [0 1 2 3 4]
|
;; Output: [0 1 2 3 4]
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 128ns
|
;; Benchmark: 92ns
|
||||||
;; Benchmark-Repeat: 15586
|
;; Benchmark-Repeat: 21913
|
||||||
;; Classic "unless" macro example
|
;; Classic "unless" macro example
|
||||||
;; Demonstrates simple template substitution.
|
;; Demonstrates simple template substitution.
|
||||||
;; Output: 42
|
;; Output: 42
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 2.2us
|
;; Benchmark: 1.9us
|
||||||
;; Benchmark-Repeat: 903
|
;; Benchmark-Repeat: 1072
|
||||||
;; Output: [150 130 "Insufficient funds" 130]
|
;; Output: [150 130 "Insufficient funds" 130]
|
||||||
|
|
||||||
; ---------------------------------------------------------
|
; ---------------------------------------------------------
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 129ns
|
;; Benchmark: 92ns
|
||||||
;; Benchmark-Repeat: 15510
|
;; Benchmark-Repeat: 22026
|
||||||
(do
|
(do
|
||||||
(macro wrap [f] `(fn [x] (~f x)))
|
(macro wrap [f] `(fn [x] (~f x)))
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 129ns
|
;; Benchmark: 91ns
|
||||||
;; Benchmark-Repeat: 15483
|
;; Benchmark-Repeat: 22036
|
||||||
(do
|
(do
|
||||||
(def area (fn [x] (* PI x)))
|
(def area (fn [x] (* PI x)))
|
||||||
(area 10)
|
(area 10)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 212ns
|
;; Benchmark: 170ns
|
||||||
;; Benchmark-Repeat: 9439
|
;; Benchmark-Repeat: 11959
|
||||||
(do
|
(do
|
||||||
;; 1. Provokation Stack-Gap (bei Optimization Level 2)
|
;; 1. Provokation Stack-Gap (bei Optimization Level 2)
|
||||||
(def result
|
(def result
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
;; Benchmark: 1.7ms
|
;; Benchmark: 1.3ms
|
||||||
;; Benchmark-Repeat: 3
|
;; Benchmark-Repeat: 3
|
||||||
;; Tests the effect of record inlining and field lookup optimization
|
;; Tests the effect of record inlining and field lookup optimization
|
||||||
;; Output: 10000
|
;; Output: 10000
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 3.4us
|
;; Benchmark: 3.2us
|
||||||
;; Benchmark-Repeat: 573
|
;; Benchmark-Repeat: 622
|
||||||
;; Output: ["Alice" 101 :admin "Zürich" ["Alice" "Bob"] true]
|
;; Output: ["Alice" 101 :admin "Zürich" ["Alice" "Bob"] true]
|
||||||
|
|
||||||
; ---------------------------------------------------------
|
; ---------------------------------------------------------
|
||||||
|
|||||||
+1
-1
@@ -2,7 +2,7 @@
|
|||||||
;; heavily recursive, benefits significantly from specialization of integer arithmetic
|
;; heavily recursive, benefits significantly from specialization of integer arithmetic
|
||||||
;; and direct function calls (skipping dynamic dispatch).
|
;; and direct function calls (skipping dynamic dispatch).
|
||||||
;; Output: 5
|
;; Output: 5
|
||||||
|
|
||||||
;; Benchmark: 413.3us
|
;; Benchmark: 413.3us
|
||||||
;; Benchmark-Repeat: 6
|
;; Benchmark-Repeat: 6
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
;; Benchmark: 2.8ms
|
;; Benchmark: 2.4ms
|
||||||
;; Output: "done"
|
;; Output: "done"
|
||||||
(do
|
(do
|
||||||
(def count_down (fn [n]
|
(def count_down (fn [n]
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 962ns
|
;; Benchmark: 889ns
|
||||||
;; Benchmark-Repeat: 2089
|
;; Benchmark-Repeat: 2282
|
||||||
(do
|
(do
|
||||||
(def pipe (fn [conf]
|
(def pipe (fn [conf]
|
||||||
(do
|
(do
|
||||||
|
|||||||
+2
-2
@@ -1,5 +1,5 @@
|
|||||||
;; Benchmark: 1.9us
|
;; Benchmark: 2.0us
|
||||||
;; Benchmark-Repeat: 1042
|
;; Benchmark-Repeat: 1014
|
||||||
;; Demonstration of N-dimensional Tuples, Vectors, and Matrices
|
;; Demonstration of N-dimensional Tuples, Vectors, and Matrices
|
||||||
;; Based on docs/Tupel 1.md
|
;; Based on docs/Tupel 1.md
|
||||||
;;
|
;;
|
||||||
|
|||||||
Reference in New Issue
Block a user