From 86689932975764ce352aee6573f550a2a304d089 Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Fri, 27 Jul 2012 15:50:12 -0700 Subject: [PATCH] benchmark.dispatch4: split into two benchmarks. --- extra/benchmark/dispatch4/dispatch4.factor | 35 ++------------------- extra/benchmark/dispatch6/dispatch6.factor | 36 ++++++++++++++++++++++ 2 files changed, 38 insertions(+), 33 deletions(-) create mode 100644 extra/benchmark/dispatch6/dispatch6.factor diff --git a/extra/benchmark/dispatch4/dispatch4.factor b/extra/benchmark/dispatch4/dispatch4.factor index 88c4592862..fac33a802f 100644 --- a/extra/benchmark/dispatch4/dispatch4.factor +++ b/extra/benchmark/dispatch4/dispatch4.factor @@ -2,7 +2,7 @@ USING: kernel.private kernel sequences math combinators sequences.private ; IN: benchmark.dispatch4 -: foobar-1 ( n -- val ) +: dispatch4 ( n -- val ) dup { [ 0 eq? [ 0 ] [ "x" ] if ] [ 1 eq? [ 1 ] [ "x" ] if ] @@ -26,41 +26,10 @@ IN: benchmark.dispatch4 [ 19 eq? [ 19 ] [ "x" ] if ] } dispatch ; -: foobar-2 ( n -- val ) - { - { [ dup 0 eq? ] [ drop 0 ] } - { [ dup 1 eq? ] [ drop 1 ] } - { [ dup 2 eq? ] [ drop 2 ] } - { [ dup 3 eq? ] [ drop 3 ] } - { [ dup 4 eq? ] [ drop 4 ] } - { [ dup 5 eq? ] [ drop 5 ] } - { [ dup 6 eq? ] [ drop 6 ] } - { [ dup 7 eq? ] [ drop 7 ] } - { [ dup 8 eq? ] [ drop 8 ] } - { [ dup 9 eq? ] [ drop 9 ] } - { [ dup 10 eq? ] [ drop 10 ] } - { [ dup 11 eq? ] [ drop 11 ] } - { [ dup 12 eq? ] [ drop 12 ] } - { [ dup 13 eq? ] [ drop 13 ] } - { [ dup 14 eq? ] [ drop 14 ] } - { [ dup 15 eq? ] [ drop 15 ] } - { [ dup 16 eq? ] [ drop 16 ] } - { [ dup 17 eq? ] [ drop 17 ] } - { [ dup 18 eq? ] [ drop 18 ] } - { [ dup 19 eq? ] [ drop 19 ] } - } cond ; - : dispatch4-benchmark ( -- ) 20000000 [ 20 [ - foobar-1 drop - ] each-integer - ] times ; - -: foobar-test-2 ( -- ) - 20000000 [ - 20 [ - foobar-2 drop + dispatch4 drop ] each-integer ] times ; diff --git a/extra/benchmark/dispatch6/dispatch6.factor b/extra/benchmark/dispatch6/dispatch6.factor new file mode 100644 index 0000000000..726fd27045 --- /dev/null +++ b/extra/benchmark/dispatch6/dispatch6.factor @@ -0,0 +1,36 @@ +USING: kernel.private kernel sequences math combinators +sequences.private ; +IN: benchmark.dispatch6 + +: dispatch6 ( n -- val ) + { + { [ dup 0 eq? ] [ drop 0 ] } + { [ dup 1 eq? ] [ drop 1 ] } + { [ dup 2 eq? ] [ drop 2 ] } + { [ dup 3 eq? ] [ drop 3 ] } + { [ dup 4 eq? ] [ drop 4 ] } + { [ dup 5 eq? ] [ drop 5 ] } + { [ dup 6 eq? ] [ drop 6 ] } + { [ dup 7 eq? ] [ drop 7 ] } + { [ dup 8 eq? ] [ drop 8 ] } + { [ dup 9 eq? ] [ drop 9 ] } + { [ dup 10 eq? ] [ drop 10 ] } + { [ dup 11 eq? ] [ drop 11 ] } + { [ dup 12 eq? ] [ drop 12 ] } + { [ dup 13 eq? ] [ drop 13 ] } + { [ dup 14 eq? ] [ drop 14 ] } + { [ dup 15 eq? ] [ drop 15 ] } + { [ dup 16 eq? ] [ drop 16 ] } + { [ dup 17 eq? ] [ drop 17 ] } + { [ dup 18 eq? ] [ drop 18 ] } + { [ dup 19 eq? ] [ drop 19 ] } + } cond ; + +: dispatch6-benchmark ( -- ) + 20000000 [ + 20 [ + dispatch6 drop + ] each-integer + ] times ; + +MAIN: dispatch6-benchmark