Skip to content

Commit

Permalink
Merge pull request #17 from tittoassini/master
Browse files Browse the repository at this point in the history
added persist, updated to latest versions of other libraries
  • Loading branch information
tittoassini authored Nov 6, 2018
2 parents 3592da3 + 4b0c810 commit 4687e8b
Show file tree
Hide file tree
Showing 8 changed files with 1,316 additions and 699 deletions.
33 changes: 16 additions & 17 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ The summary tables list, for every test, all libraries that are within 30% of th
To merge all measures in a concrete use case, we estimate the total transfer time at different transmission speeds, that's to say the the time that it takes to serialize, move across a network (with no compression and no protocol overheads) and deserialize a given dataset.

|Dataset\Measure|transfer [10 MBits]|transfer [100 MBits]|transfer [1000 MBits]|
| ---| ---| ---| ---|
|BinTree Direction|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store)|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat)|
|BinTree Int|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat)|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat)|
|Cars|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat)|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat)|
|Iris|[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store),[packman](https://hackage.haskell.org/package/packman),[cereal](https://hackage.haskell.org/package/cereal),[serialise](https://hackage.haskell.org/package/serialise)|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat)|[store](https://hackage.haskell.org/package/store)|
|[Direction]|[flat](https://hackage.haskell.org/package/flat)|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat),[cereal](https://hackage.haskell.org/package/cereal)|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat)|
| ---| ---| ---| ---|
|BinTree Direction|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat),[persist](https://hackage.haskell.org/package/persist),[store](https://hackage.haskell.org/package/store)|
|BinTree Int|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store),[persist](https://hackage.haskell.org/package/persist)|
|Cars|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store),[persist](https://hackage.haskell.org/package/persist)|
|Iris|[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store),[packman](https://hackage.haskell.org/package/packman),[persist](https://hackage.haskell.org/package/persist),[cereal](https://hackage.haskell.org/package/cereal),[serialise](https://hackage.haskell.org/package/serialise)|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat),[persist](https://hackage.haskell.org/package/persist)|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat)|
|[Direction]|[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat),[persist](https://hackage.haskell.org/package/persist)|[flat](https://hackage.haskell.org/package/flat),[persist](https://hackage.haskell.org/package/persist),[store](https://hackage.haskell.org/package/store)|

When the network speed is low, transfer times are dominated by the size of the encoded dataset. At higher speeds, by the (de)serialisation times.

Expand All @@ -25,13 +25,12 @@ Tests are executed on an Intel Xeon W3520 @ 2.67GHz. On a slower machine, de(ser
### (De)serialization Times and Size

|Dataset\Measure|deserialization|serialization|size|
| ---| ---| ---| ---|
|BinTree Direction|[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store)|[store](https://hackage.haskell.org/package/store)|[flat](https://hackage.haskell.org/package/flat)|
|BinTree Int|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat),[cereal](https://hackage.haskell.org/package/cereal)|[store](https://hackage.haskell.org/package/store)|[flat](https://hackage.haskell.org/package/flat)|
|Cars|[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store)|[store](https://hackage.haskell.org/package/store)|[flat](https://hackage.haskell.org/package/flat)|
|Iris|[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat)|[store](https://hackage.haskell.org/package/store)|[packman](https://hackage.haskell.org/package/packman),[flat](https://hackage.haskell.org/package/flat),[cereal](https://hackage.haskell.org/package/cereal),[store](https://hackage.haskell.org/package/store),[serialise](https://hackage.haskell.org/package/serialise)|
|[Direction]|[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store),[cereal](https://hackage.haskell.org/package/cereal)|[store](https://hackage.haskell.org/package/store)|[flat](https://hackage.haskell.org/package/flat)|

| ---| ---| ---| ---|
|BinTree Direction|[flat](https://hackage.haskell.org/package/flat),[persist](https://hackage.haskell.org/package/persist),[store](https://hackage.haskell.org/package/store)|[persist](https://hackage.haskell.org/package/persist),[store](https://hackage.haskell.org/package/store)|[flat](https://hackage.haskell.org/package/flat)|
|BinTree Int|[store](https://hackage.haskell.org/package/store),[persist](https://hackage.haskell.org/package/persist),[flat](https://hackage.haskell.org/package/flat),[cereal](https://hackage.haskell.org/package/cereal)|[flat](https://hackage.haskell.org/package/flat),[persist](https://hackage.haskell.org/package/persist),[store](https://hackage.haskell.org/package/store)|[flat](https://hackage.haskell.org/package/flat)|
|Cars|[persist](https://hackage.haskell.org/package/persist),[flat](https://hackage.haskell.org/package/flat),[store](https://hackage.haskell.org/package/store)|[store](https://hackage.haskell.org/package/store)|[flat](https://hackage.haskell.org/package/flat)|
|Iris|[store](https://hackage.haskell.org/package/store),[persist](https://hackage.haskell.org/package/persist),[flat](https://hackage.haskell.org/package/flat)|[store](https://hackage.haskell.org/package/store)|[packman](https://hackage.haskell.org/package/packman),[flat](https://hackage.haskell.org/package/flat),[cereal](https://hackage.haskell.org/package/cereal),[persist](https://hackage.haskell.org/package/persist),[store](https://hackage.haskell.org/package/store),[serialise](https://hackage.haskell.org/package/serialise)|
|[Direction]|[flat](https://hackage.haskell.org/package/flat),[persist](https://hackage.haskell.org/package/persist),[cereal](https://hackage.haskell.org/package/cereal),[store](https://hackage.haskell.org/package/store)|[persist](https://hackage.haskell.org/package/persist),[store](https://hackage.haskell.org/package/store),[flat](https://hackage.haskell.org/package/flat)|[flat](https://hackage.haskell.org/package/flat)|


## Full Results
Expand All @@ -48,12 +47,12 @@ Performance is not the only relevant property, depending on your needs you shoul

| Package | Laziness | Compatibility |
| --- | --- | --- |
| [store-0.5.0](https://hackage.haskell.org/package/store) | Strict | Haskell-Same-Architecture |
| [store-0.5.0.1](https://hackage.haskell.org/package/store) | Strict | Haskell-Same-Architecture |
| [packman-0.5.0](http://hackage.haskell.org/package/packman) | Lazy | Haskell-Same-Architecture |
| [cereal-0.5.7.0](http://hackage.haskell.org/package/cereal) | Strict | Haskell |
| [binary-0.8.5.1](http://hackage.haskell.org/package/binary) | Lazy | Haskell |
| [serialise-0.2.0.0](https://hackage.haskell.org/package/serialise) | Lazy | Multi-Language |
| [flat-0.3.2](https://hackage.haskell.org/package/flat) | Strict | Multi-Language |
| [serialise-0.2.1.0](https://hackage.haskell.org/package/serialise) | Lazy | Multi-Language |
| [flat-0.3.4](https://hackage.haskell.org/package/flat) | Strict | Multi-Language |
| [persist-0.1](https://hackage.haskell.org/package/persist) | Strict | Haskell |

Compatibility Levels (lowest to highest):
Expand Down Expand Up @@ -92,5 +91,5 @@ Try:

The executable will write the *report.md*, *report.html* and *report.json* files containing the full test results and will print out the two summary results tables in markdown format.

Tests will be compiled with GHC 8.4.3.
Tests will be compiled with GHC 8.4.4.

2 changes: 1 addition & 1 deletion measures

Large diffs are not rendered by default.

Loading

0 comments on commit 4687e8b

Please sign in to comment.