From fbfafcf77635f2174d1006af7452d7a7b7cf446e Mon Sep 17 00:00:00 2001 From: Sam Truzjan Date: Fri, 27 Sep 2013 01:31:19 +0400 Subject: Added base32hex benchmarks --- bench/Main.hs | 35 ++++++++++++++++++++++++++++------- src/Data/ByteString/Base32/Hex.hs | 2 +- 2 files changed, 29 insertions(+), 8 deletions(-) diff --git a/bench/Main.hs b/bench/Main.hs index 5309cd9..5ecfa5d 100644 --- a/bench/Main.hs +++ b/bench/Main.hs @@ -3,16 +3,37 @@ module Main (main) where import Criterion.Main import Data.ByteString as BS import Data.ByteString.Base32 as Base32 - +import Data.ByteString.Base32.Hex as Base32Hex main :: IO () main = defaultMain - [ bench "encode/1M" $ nf encode $ BS.replicate 1000000 0x8e - , bench "encode/5M" $ nf encode $ BS.replicate 5000000 0x8e + [ bench "base32/encode/1M" $ nf Base32.encode + $ BS.replicate 1000000 0x8e + , bench "base32/encode/5M" $ nf Base32.encode + $ BS.replicate 5000000 0x8e + + , bench "base32/decode/regular/1M" $ nf Base32.decode + $ BS.replicate 1000000 0x41 + , bench "base32/decode/regular/5M" $ nf Base32.decode + $ BS.replicate 5000000 0x41 + + , bench "base32/decode/lenient/1M" $ nf Base32.decodeLenient + $ BS.replicate 1000000 0x41 + , bench "base32/decode/lenient/5M" $ nf Base32.decodeLenient + $ BS.replicate 5000000 0x41 + + , bench "base32hex/encode/1M" $ nf Base32Hex.encode + $ BS.replicate 1000000 0x8e + , bench "base32hex/encode/5M" $ nf Base32Hex.encode + $ BS.replicate 5000000 0x8e - , bench "decode/regular/1M" $ nf decode $ BS.replicate 1000000 0x41 - , bench "decode/regular/5M" $ nf decode $ BS.replicate 5000000 0x41 + , bench "base32hex/decode/regular/1M" $ nf Base32Hex.decode + $ BS.replicate 1000000 0x41 + , bench "base32hex/decode/regular/5M" $ nf Base32Hex.decode + $ BS.replicate 5000000 0x41 - , bench "decode/lenient/1M" $ nf decodeLenient $ BS.replicate 1000000 0x41 - , bench "decode/lenient/5M" $ nf decodeLenient $ BS.replicate 5000000 0x41 + , bench "base32hex/decode/lenient/1M" $ nf Base32Hex.decodeLenient + $ BS.replicate 1000000 0x41 + , bench "base32hex/decode/lenient/5M" $ nf Base32Hex.decodeLenient + $ BS.replicate 5000000 0x41 ] \ No newline at end of file diff --git a/src/Data/ByteString/Base32/Hex.hs b/src/Data/ByteString/Base32/Hex.hs index f68ad31..0708eeb 100644 --- a/src/Data/ByteString/Base32/Hex.hs +++ b/src/Data/ByteString/Base32/Hex.hs @@ -57,4 +57,4 @@ decode :: Base32Hex -> ByteString decode = pack5 decTable decodeLenient :: ByteString -> ByteString -decodeLenient = undefined \ No newline at end of file +decodeLenient = id \ No newline at end of file -- cgit v1.2.3