Commit Graph

569 Commits

Author SHA1 Message Date
Harendra Kumar
3324822d6a Add write barriers for doorBell 2018-06-02 22:39:06 +05:30
Harendra Kumar
6a231858e3 Exit and restart workers instead of making them wait 2018-06-02 22:22:14 +05:30
Harendra Kumar
4ac58c8355 Reduce CAS retry to 25 from 30
Slightly better perf on macbook pro measured with parallely/foldMapWith*
benchmarks
2018-06-01 11:50:41 +05:30
Harendra Kumar
1e4a69e7c1 Add more diagnostics to study the adaptation 2018-06-01 11:49:09 +05:30
Harendra Kumar
dfac46f613 Add benchmarks for adaptive concurrency 2018-05-31 17:54:42 +05:30
Harendra Kumar
80f8f28167 improve perf and modularity 2018-05-30 11:25:10 +05:30
Harendra Kumar
cfe9dd6c62 use lower number of elements in benchmark stream
To enable parallel benchmarks
2018-05-30 09:20:08 +05:30
Harendra Kumar
54419aa5c3 remove redundant liftIO 2018-05-29 12:51:38 +05:30
Harendra Kumar
c77d3fbd62 More consistent naming of operators 2018-05-28 13:24:42 +05:30
Harendra Kumar
01f0681946 Add concurrent, generation, transformation and application 2018-05-28 12:34:57 +05:30
Harendra Kumar
082a4fcfbb improve docs, add operator mnemonics 2018-05-28 12:16:36 +05:30
Harendra Kumar
2f706b9bfb add concurrent stream generation benchmarks 2018-05-28 11:35:33 +05:30
Harendra Kumar
21c07ab9c4 update CI configs to latest packcheck 2018-05-27 21:25:35 +05:30
Harendra Kumar
c3a5ef2826 make docs of unfoldrM and iterateM more precise
And improve the "writing concurrent programs" section in tutorial
2018-05-27 18:56:06 +05:30
Harendra Kumar
669295965a Add some INLINABLE pragams 2018-05-27 10:33:21 +05:30
Harendra Kumar
ed0323caed Add a diagnostics flag to debug problems in field 2018-05-27 09:52:00 +05:30
Harendra Kumar
d76544497a Remove lifted-base dependency
Also got nice perf bump for parallel composition due to simpler fork
2018-05-27 08:55:03 +05:30
Harendra Kumar
e60357957c Add concurrent function application operators 2018-05-26 17:02:36 +05:30
Harendra Kumar
092ecb95f4 update documentation
- detailed doc for unfoldr/unfoldrM
- notes and cautions on concurrency
- concurrent API annotations
2018-05-25 09:01:22 +05:30
Harendra Kumar
2b62821f48 enable SVar diagnostics 2018-05-24 17:53:40 +05:30
Harendra Kumar
dfecce27eb Fix build for ghc-7.10 and 8.0 2018-05-24 17:35:18 +05:30
Harendra Kumar
96dca8eacd update quickcheck version bound
for withMaxSuccess API
2018-05-24 17:12:39 +05:30
Harendra Kumar
9cb2ac0bb7 Add concurrent generation and transformation capabilities
- monadic stream generation functions are now concurrent
- monadic stream transformation (mapM, sequence) functions are now concurrent
- fixed a race which caused blockedindefinitely on MVar in rare cases
2018-05-24 16:48:48 +05:30
Harendra Kumar
c2279b98b4 rename joinStreamVar2 to joinStreamVarAsync 2018-05-22 15:05:22 +05:30
Harendra Kumar
0a07ae9dbe Add cons and consM to the IsStream class 2018-05-22 13:07:22 +05:30
Harendra Kumar
3b6427818f Add fromFoldableM
Also,

- INLINE consM and once
- add benchmarking for various ways of sourcing (unfoldr(M), fromFoldable(M),
  foldMapWith serial)
2018-05-21 17:54:19 +05:30
Harendra Kumar
21758e09a3 use aheadly in the Listdir example 2018-05-21 06:02:46 +05:30
Harendra Kumar
45a9ea0100 update interop APIs to modular "to" and "from" style 2018-05-19 05:39:14 +05:30
Harendra Kumar
f849361836 Coverage tests take too long and fail, disable them 2018-05-18 13:28:04 +05:30
Harendra Kumar
9a5a5e8211 Simplify SVar types - remove the Conjunction/Disjunction tags 2018-05-18 12:40:58 +05:30
Harendra Kumar
23c6469419 Update changelog for "Ahead" stream type 2018-05-17 14:13:59 +05:30
Harendra Kumar
029594c645 use -threaded and -N4 options for tests 2018-05-17 14:11:23 +05:30
Harendra Kumar
9da3fccd20 Add concurrent lookahead stream type "Ahead" 2018-05-17 11:22:29 +05:30
Harendra Kumar
a4e4c07513 Make the siren mechanism more efficient 2018-05-15 23:05:06 +05:30
Harendra Kumar
77a818b3fd push liftIOs as high up as possible
And some cleanups, comments etc.
2018-05-15 22:57:49 +05:30
Harendra Kumar
14ecf65860 Remove charts from tar, fix version typo 2018-05-14 03:38:59 +05:30
Harendra Kumar
4e5268a552 fix code snippets in tutorial 2018-05-14 03:03:06 +05:30
Harendra Kumar
5876b20072 Fix code snippets 2018-05-13 12:38:26 +05:30
Harendra Kumar
2fb74c756f Fix benchmark charting 2018-05-13 11:58:09 +05:30
Harendra Kumar
ff38c5009d update thread/output buffer limits in changelog
and fix bench.sh
2018-05-13 11:30:57 +05:30
Harendra Kumar
9c9b27949c Fix missing nomenclature changes 2018-05-13 11:05:33 +05:30
Harendra Kumar
56cb8e6981 Fix nomenclature in examples 2018-05-13 10:48:18 +05:30
Harendra Kumar
b03a7b60f9 Fix nomenclature in tests 2018-05-13 10:42:03 +05:30
Harendra Kumar
c8b32f2a53 Fix naming changes in benchmarks 2018-05-13 10:27:49 +05:30
Harendra Kumar
c9277a83a7 Change the nomenclature of streams 2018-05-13 10:13:26 +05:30
Harendra Kumar
ce79079002 Add a thread limit for async ahead types
currently hardcoded to 1500 threads
2018-05-11 01:49:26 +05:30
Harendra Kumar
5c975dec70 put a bound on the output queue size 2018-05-11 00:39:59 +05:30
Harendra Kumar
bac26fc44e Change the doorbell MVar type to () from Bool 2018-05-10 06:43:12 +05:30
Harendra Kumar
b8ced4d56f Use optimized CAS and one more optimization 2018-05-10 05:58:34 +05:30
Harendra Kumar
7afa715596 track active workers in an SVar 2018-05-09 20:38:29 +05:30