@@ -448,6 +448,13 @@ splitOnSeq str inh =
448-- inspect $ 'splitOnSeq `hasNoType` ''Step
448-- inspect $ 'splitOnSeq `hasNoType` ''Step
451+-- | Split on a word8 sequence.
452+splitOnSeq100k :: Handle -> IO Int
453+splitOnSeq100k inh = do
454+ arr <- A.fromStream $ S.replicate 100000 123
455+ (S.length $ IP.splitOnSeq arr FL.drain
456+ $ S.unfold FH.read inh) -- >>= print
451-- | Split on suffix sequence.
458-- | Split on suffix sequence.
452splitOnSuffixSeq :: String -> Handle -> IO Int
459splitOnSuffixSeq :: String -> Handle -> IO Int
453splitOnSuffixSeq str inh =
460splitOnSuffixSeq str inh =
@@ -496,6 +503,8 @@ o_1_space_reduce_read_split env =
496 splitOnSeq "catcatcatcatcat" inh
503 splitOnSeq "catcatcatcatcat" inh
497 , mkBench "S.splitOnSeq \"abcdefghijklmnopqrstuvwxyz\" FL.drain"
504 , mkBench "S.splitOnSeq \"abcdefghijklmnopqrstuvwxyz\" FL.drain"
498 env $ \inh _ -> splitOnSeq "abcdefghijklmnopqrstuvwxyz" inh
505 env $ \inh _ -> splitOnSeq "abcdefghijklmnopqrstuvwxyz" inh
506+ , mkBench "S.splitOnSeq 100k long pattern"
507+ env $ \inh _ -> splitOnSeq100k inh
499 , mkBenchSmall "S.splitOnSuffixSeq \"abcdefghijklmnopqrstuvwxyz\" FL.drain"
508 , mkBenchSmall "S.splitOnSuffixSeq \"abcdefghijklmnopqrstuvwxyz\" FL.drain"
500 env $ \inh _ -> splitOnSuffixSeq "abcdefghijklmnopqrstuvwxyz" inh
509 env $ \inh _ -> splitOnSuffixSeq "abcdefghijklmnopqrstuvwxyz" inh