compress/bench/Bench.hs

15 lines
562 B
Haskell

import Criterion.Main
import Compress.LengthDistancePairs
import qualified Data.ByteString as BS
import qualified Compress.Arithmetic as A
main = do
testData <- BS.unpack . BS.take 10000 <$> (BS.readFile "pg64317.txt")
defaultMain [
bgroup "encode" [
bench "length distance pair" $ nf (encode :: [Word8] -> [LengthDistancePair Word32]) testData
],
bgroup "arithmetic coding" [
bench "pg64317.txt" $ nf A.compress testData
]
]