on master help sign in
Vary block size when parsing
commit8a1c9c55a3e95dd0d1c62742920a405acd56dda2 authorBryan O'Sullivan <bos@serpentine.com> dateWed 30 Jan 2013, 22:24 (14 years ago) parentfe0c366
1 file changed+3−2
benchmarks/AesonParse.hs+3−2
benchmarks/AesonParse.hs+3−2
@@ -10,8 +10,9 @@ import System.IO
1010import qualified Data.ByteString as B
1111
1212main = do
13− (cnt:args) <- getArgs
13+ (bs:cnt:args) <- getArgs
1414 let count = read cnt :: Int
15+ blkSize = read bs
1516 forM_ args $ \arg -> bracket (openFile arg ReadMode) hClose $ \h -> do
1617 putStrLn $ arg ++ ":"
1718 start <- getCurrentTime
@@ -19,7 +20,7 @@ main = do
1920 | good+bad >= count = return (good, bad)
2021 | otherwise = do
2122 hSeek h AbsoluteSeek 0
22− let refill = B.hGet h 16384
23+ let refill = B.hGet h blkSize
2324 result <- parseWith refill json =<< refill
2425 case result of
2526 Done _ r -> loop (good+1) bad