Skip to content

Commit 6cb3c72

Browse files
committed
Change Length, Max, Sort benchmark to include for different sizes
1 parent 7926aab commit 6cb3c72

File tree

1 file changed

+27
-27
lines changed

1 file changed

+27
-27
lines changed

Time.hs

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ data Conser = forall f. NFData (f Int) => Conser String (Int -> f Int)
1919
data Append = forall f. NFData (f Int) => Append String (Int -> IO (f Int)) (f Int -> f Int -> f Int)
2020
data Replicator = forall f. NFData (f Int) => Replicator String (Int -> Int -> f Int)
2121
data Indexing = forall f. NFData (f Int) => Indexing String (IO (f Int)) (f Int -> Int -> Int)
22-
data Length = forall f. NFData (f Int) => Length String (IO (f Int)) (f Int -> Int)
22+
data Length = forall f. NFData (f Int) => Length String (Int -> IO (f Int)) (f Int -> Int)
2323
data Min = forall f. NFData (f Int) => Min String (Int -> IO (f Int)) (f Int -> Int)
24-
data Max = forall f. NFData (f Int) => Max String (IO (f Int)) (f Int -> Int)
25-
data Sort = forall f. NFData (f Int) => Sort String (IO (f Int)) (f Int -> f Int)
24+
data Max = forall f. NFData (f Int) => Max String (Int -> IO (f Int)) (f Int -> Int)
25+
data Sort = forall f. NFData (f Int) => Sort String (Int -> IO (f Int)) (f Int -> f Int)
2626
data RemoveElement = forall f. NFData (f Int) => RemoveElement String (IO (f Int)) ((Int -> Bool) -> f Int -> f Int)
2727
data RemoveByIndex = forall f. NFData (f Int) => RemoveByIndex String (IO (f Int)) ((Int -> Int -> Bool) -> f Int -> f Int)
2828

@@ -69,12 +69,11 @@ main = do
6969
])
7070
, bgroup
7171
"Length"
72-
(let size = 10005
73-
in lengths
74-
[ Length "Data.List" (sampleList size) (L.length)
75-
, Length "Data.Vector" (sampleVector size) (V.length)
76-
, Length "Data.Vector.Unboxed" (sampleUVVector size) (UV.length)
77-
, Length "Data.Sequence" (sampleSeq size) (S.length)
72+
(lengths
73+
[ Length "Data.List" sampleList (L.length)
74+
, Length "Data.Vector" sampleVector (V.length)
75+
, Length "Data.Vector.Unboxed" sampleUVVector (UV.length)
76+
, Length "Data.Sequence" sampleSeq (S.length)
7877
])
7978
, bgroup
8079
"Min"
@@ -85,19 +84,17 @@ main = do
8584
])
8685
, bgroup
8786
"Max"
88-
(let size = 10005
89-
in maxs
90-
[ Max "Data.List" (sampleList size) (L.maximum)
91-
, Max "Data.Vector" (sampleVector size) (V.maximum)
92-
, Max "Data.Vector.Unboxed" (sampleUVVector size) (UV.maximum)
87+
(maxs
88+
[ Max "Data.List" sampleList (L.maximum)
89+
, Max "Data.Vector" sampleVector (V.maximum)
90+
, Max "Data.Vector.Unboxed" sampleUVVector (UV.maximum)
9391
])
9492
, bgroup
9593
"Sort"
96-
(let size = 10005
97-
in sorts
98-
[ Sort "Data.List" (sampleList size) (L.sort)
99-
, Sort "Data.Sequence" (sampleSeq size) (S.sort)
100-
])
94+
(sorts
95+
[ Sort "Data.List" sampleList (L.sort)
96+
, Sort "Data.Sequence" sampleSeq (S.sort)
97+
])
10198
, bgroup
10299
"Remove Element"
103100
(let size = 10005
@@ -147,21 +144,24 @@ main = do
147144
, Indexing title payload func <- funcs
148145
]
149146
lengths funcs =
150-
[ env payload (\p -> bench (title ++ ":10000") $ nf (\x -> func x) p)
151-
| Length title payload func <- funcs
147+
[ env (payload len) (\p -> bench (title ++ ":" ++ (show len)) $ nf (\x -> func x) p)
148+
| len <- [10, 100, 1000, 10000]
149+
, Length title payload func <- funcs
152150
]
153151
mins funcs =
154152
[ env (payload len) (\p -> bench (title ++ ":" ++ (show len)) $ nf (\x -> func x) p)
155-
| len <- [10, 100, 1000, 10000]
156-
, Min title payload func <- funcs
153+
| len <- [10, 100, 1000, 10000]
154+
, Min title payload func <- funcs
157155
]
158156
maxs funcs =
159-
[ env payload (\p -> bench (title ++ ":10000") $ nf (\x -> func x) p)
160-
| Max title payload func <- funcs
157+
[ env (payload len) (\p -> bench (title ++ ":" ++ (show len)) $ nf (\x -> func x) p)
158+
| len <- [10, 100, 1000, 10000]
159+
, Max title payload func <- funcs
161160
]
162161
sorts funcs =
163-
[ env payload (\p -> bench (title ++ ":10000") $ nf (\x -> func x) p)
164-
| Sort title payload func <- funcs
162+
[ env (payload len) (\p -> bench (title ++ ":" ++ (show len)) $ nf (\x -> func x) p)
163+
| len <- [10, 100, 1000, 10000]
164+
, Sort title payload func <- funcs
165165
]
166166
removeElems funcs =
167167
[ env

0 commit comments

Comments
 (0)