on master help sign in
Add benchmarks for ordered concurrent streams (ahead)
commitae37ca3f4471f2f85d4dd1f9bb678e6b6541a487 authorHarendra Kumar <harendra@composewell.com> dateMon 10 Oct 2022, 00:45 (4 years ago) parent8480c9e
3 files changed+42
benchmark/Streamly/Benchmark/Data/Stream/AsyncOrdered.hs+23 benchmark/streamly-benchmarks.cabal+13 targets/Targets.hs+6
benchmark/Streamly/Benchmark/Data/Stream/AsyncOrdered.hsnew file+23
@@ -0,0 +1,23 @@
1+{-# LANGUAGE FlexibleContexts #-}
2+-- |
3+-- Module : Main
4+-- Copyright : (c) 2018 Composewell Technologies
5+--
6+-- License : BSD3
7+-- Maintainer : streamly@composewell.com
8+
9+import Stream.AsyncCommon (allBenchmarks)
10+import Streamly.Benchmark.Common (runWithCLIOpts, defaultStreamSize)
11+
12+import qualified Streamly.Internal.Data.Stream.Async as Async
13+
14+moduleName :: String
15+moduleName = "Data.Stream.AsyncOrdered"
16+
17+-------------------------------------------------------------------------------
18+-- Main
19+-------------------------------------------------------------------------------
20+
21+main :: IO ()
22+main =
23+ runWithCLIOpts defaultStreamSize (allBenchmarks moduleName Async.ordered)
benchmark/streamly-benchmarks.cabal+13
@@ -270,6 +270,19 @@ benchmark Data.Stream.AsyncEager
270270 else
271271 buildable: True
272272
273+benchmark Data.Stream.AsyncOrdered
274+ import: bench-options-threaded
275+ type: exitcode-stdio-1.0
276+ hs-source-dirs: Streamly/Benchmark/Data/Stream/, Streamly/Benchmark/Data/
277+ main-is: AsyncOrdered.hs
278+ other-modules:
279+ Stream.AsyncCommon
280+ Stream.Common
281+ if flag(use-streamly-core) || impl(ghcjs)
282+ buildable: False
283+ else
284+ buildable: True
285+
273286benchmark Prelude.WSerial
274287 import: bench-options
275288 type: exitcode-stdio-1.0
targets/Targets.hs+6
@@ -40,6 +40,12 @@ targets =
4040 , "concurrent_cmp"
4141 ]
4242 )
43+ , ("Data.Stream.AsyncOrdered",
44+ [ "prelude_concurrent_grp"
45+ , "infinite_grp"
46+ , "concurrent_cmp"
47+ ]
48+ )
4349 , ("Prelude.WSerial", ["serial_wserial_cmp"])
4450 , ("Prelude.WSerial",
4551 [ "prelude_serial_grp"