wire-streams: Use cereal or binary with io-streams.

[ bsd3, data, io-streams, library, parsing ] [ Propose Tags ]

Use cereal or binary with io-streams.


[Skip to Readme]

Modules

[Index]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.0.2.0, 0.1.0.0, 0.1.1.0
Change log CHANGELOG
Dependencies base (>=4 && <5), binary (>=0.8 && <0.9), binary-parsers (>=0.2.1), bytestring (>=0.10 && <0.11), io-streams (>=1.2) [details]
License BSD-3-Clause
Copyright Winterland
Author Winterland
Maintainer winterland1989@gmail.com
Category Data, Parsing, IO-Streams
Home page https://github.com/winterland1989/wire-streams
Source repo head: git clone git://github.com/winterland1989/wire-streams.git
Uploaded by winterland at 2016-09-24T05:58:26Z
Distributions
Reverse Dependencies 2 direct, 8 indirect [details]
Downloads 4225 total (21 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]

Readme for wire-streams-0.1.0.0

[back to package description]

wire-streams

Hackage Build Status

Serialize/deserialize ByteString streams from io-streams using binary package.

From v0.1 cereal is removed because a binary performance problem is taken care of by binary-parsers package, now binary is much faster and more featureful.

Benchmark

benchmarking decode one element wire-streams/cereal/1000 items
time                 127.6 ns   (126.4 ns .. 129.2 ns)
                     0.999 R²   (0.998 R² .. 0.999 R²)
mean                 128.1 ns   (126.6 ns .. 130.1 ns)
std dev              6.019 ns   (4.441 ns .. 9.245 ns)
variance introduced by outliers: 67% (severely inflated)

benchmarking decode one element wire-streams/binary/1000 items
time                 90.49 ns   (89.77 ns .. 91.11 ns)
                     0.999 R²   (0.999 R² .. 0.999 R²)
mean                 90.42 ns   (89.44 ns .. 91.41 ns)
std dev              3.371 ns   (2.711 ns .. 4.433 ns)
variance introduced by outliers: 57% (severely inflated)

benchmarking decode one element cereal-conduit/1000 items
time                 345.2 ns   (325.0 ns .. 382.3 ns)
                     0.953 R²   (0.896 R² .. 0.999 R²)
mean                 338.6 ns   (329.5 ns .. 379.4 ns)
std dev              52.15 ns   (14.85 ns .. 114.3 ns)
variance introduced by outliers: 95% (severely inflated)

benchmarking decode 1000 elements from wire-streams/cereal/1000 items
time                 97.24 μs   (95.95 μs .. 98.57 μs)
                     0.999 R²   (0.998 R² .. 0.999 R²)
mean                 97.75 μs   (96.78 μs .. 98.68 μs)
std dev              3.170 μs   (2.640 μs .. 3.906 μs)
variance introduced by outliers: 31% (moderately inflated)

benchmarking decode 1000 elements from wire-streams/binary/1000 items
time                 65.24 μs   (64.69 μs .. 65.94 μs)
                     0.999 R²   (0.998 R² .. 0.999 R²)
mean                 66.09 μs   (65.35 μs .. 67.62 μs)
std dev              3.601 μs   (2.014 μs .. 6.391 μs)
variance introduced by outliers: 58% (severely inflated)

benchmarking decode 1000 elements cereal-conduit/1000 items
time                 198.4 μs   (195.4 μs .. 201.3 μs)
                     0.998 R²   (0.997 R² .. 0.999 R²)
mean                 200.4 μs   (197.9 μs .. 203.7 μs)
std dev              9.718 μs   (7.707 μs .. 12.77 μs)
variance introduced by outliers: 47% (moderately inflated)