@@ -49,8 +49,8 @@ benchIO
4949benchIO name src sink =
5050 bench name $ nfIO $ randomRIO (1,1) >>= sink . src
5151
52−o_n_space_serial_marray :: Int -> MArray.Array Int -> [Benchmark]
53−o_n_space_serial_marray value array =
52+o_1_space_serial_marray :: Int -> MArray.Array Int -> [Benchmark]
53+o_1_space_serial_marray value array =
5454 [ benchIO "partitionBy (< 0)" (const array)
5555 $ MArray.partitionBy (< 0)
5656 , benchIO "partitionBy (> 0)" (const array)
@@ -59,22 +59,10 @@ o_n_space_serial_marray value array =
5959 $ MArray.partitionBy (< (value `div` 2))
6060 , benchIO "partitionBy (> value/2)" (const array)
6161 $ MArray.partitionBy (> (value `div` 2))
62− ]
63−
64−o_1_space_serial_marray :: Int -> MArray.Array Int -> [Benchmark]
65−o_1_space_serial_marray value array =
66− [ benchIO "strip (< 0)" (const array)
67− $ MArray.strip (< 0)
62+ , benchIO "strip (< value/2 || > value/2)" (const array)
63+ $ MArray.strip (\x -> x < value `div` 2 || x > value `div` 2)
6864 , benchIO "strip (> 0)" (const array)
6965 $ MArray.strip (> 0)
70− , benchIO "strip (< value/2)" (const array)
71− $ MArray.strip (< (value `div` 2))
72− , benchIO "strip (> value/2)" (const array)
73− $ MArray.strip (> (value `div` 2))
74− , benchIO "strip (odd)" (const array)
75− $ MArray.strip odd
76− , benchIO "strip (even)" (const array)
77− $ MArray.strip even
7866 ]
7967
8068-------------------------------------------------------------------------------
@@ -94,7 +82,5 @@ main = do
9482
9583 allBenchmarks array value =
9684 [ bgroup (o_1_space_prefix moduleName) $
97− o_n_space_serial_marray value array
98− , bgroup (o_1_space_prefix moduleName) $
9985 o_1_space_serial_marray value array
10086 ]