Commit Graph

4185 Commits

Author SHA1 Message Date
Adithya Kumar
0aa9e6160f Add benchmarks for unsigned 64 bit integer variable length encoding 2023-08-30 19:17:03 +05:30
Adithya Kumar
6c4cb1b4e7 Add tests for unsigned 64 bit integer variable length encoding 2023-08-30 19:16:59 +05:30
Adithya Kumar
159a048652 Add variable length encoding for unsigned 64 bit integer 2023-08-30 19:16:59 +05:30
Adithya Kumar
50fc60cb50 Add serialize size checks for constant size datatypes 2023-08-30 14:07:33 +05:30
Adithya Kumar
1d0e20c9d3 Add a test checking the size in the roundtrip serialization tests 2023-08-30 14:07:33 +05:30
Adithya Kumar
5fef84310e Remove Serailize.Size and change the signature of Serialize.size 2023-08-30 14:07:33 +05:30
Adithya Kumar
6a3971955c Copy only the required slice while pinning/unpinning the array 2023-08-28 16:39:14 +05:30
Adithya Kumar
ab0c439e77 Move putSliceUnsafe from MutArray to Unbox 2023-08-28 16:39:14 +05:30
Adithya Kumar
c4b717ec8e Implement clone in MutArray 2023-08-28 16:39:14 +05:30
Harendra Kumar
9e8c35d49e Add fusion checking code in Data.Fold benchmark 2023-08-24 19:43:51 +05:30
Ranjeet Ranjan
cceee460c7
Change the Builder type (#2561) 2023-08-24 19:40:19 +05:30
Ranjeet Ranjan
8ac4c0b170
Reduce internal imports of "streamly-core" in "streamly" package (#2571) 2023-08-24 18:59:06 +05:30
Ranjeet Ranjan
313d1786a0
Fix Data.Array.Generic.writeLastN bug (#2567)
Co-authored-by: Harendra Kumar <harendra@composewell.com>
2023-08-24 15:34:26 +05:30
Ranjeet Ranjan
fe5a036489
Remove the no-fusion build flag and DISABLE_FUSION cpp macro (#2568) 2023-08-24 11:42:29 +05:30
Ranjeet Kumar Ranjan
8e6d418922 Export the Data.Time.Clock.Type module from Clock 2023-08-24 11:41:26 +05:30
Harendra Kumar
faf50b6be1 Perform safe deserialization of list length 2023-08-23 19:08:37 +05:30
Harendra Kumar
3e93e22228 Disable some redundant serialize benchmarks 2023-08-23 16:20:10 +05:30
Harendra Kumar
71346fd9a3 Add encode benchmark
encode = poke + getSize + array allocation
2023-08-23 16:20:10 +05:30
Harendra Kumar
282d79cd9d Use deepseq instead of equality check 2023-08-23 16:20:10 +05:30
Harendra Kumar
b6a2d3e836 Remove INLINE from list instance 2023-08-21 16:28:02 +05:30
Harendra Kumar
7bc450d725 Pass the array size to deserialize for bound check 2023-08-21 16:28:02 +05:30
Harendra Kumar
ad84b443b0 Update documentation of Unbox for sum types 2023-08-21 16:28:02 +05:30
Harendra Kumar
43e25a173f Enable the comparison after deserialization 2023-08-21 16:28:02 +05:30
Harendra Kumar
bf3e775de3 Deserialize: Construct the list more efficiently 2023-08-21 16:28:02 +05:30
Harendra Kumar
7c81bfb731 Deserialize: Keep the likely path in the straight branch 2023-08-21 16:28:02 +05:30
Harendra Kumar
73533c028c Enable array bound check during deserialize 2023-08-21 16:28:02 +05:30
Ranjeet Ranjan
209e990b06
Re-export entire submodules from Parser (#2525) 2023-08-21 14:09:09 +05:30
Adithya Kumar
bfe0169024 Simplify Serialize benchmarking code 2023-08-21 01:45:06 +05:30
Harendra Kumar
4dbdf477a8 Remove the alloc cost from poke op
For better comparison with peek cost.
Also now there are two versions of poke benchmarks, one including the
getSize cost and the other without to figure out how much overhead
getSize adds, because the cost may be nothing if it is dominated by
cache miss costs.
2023-08-21 01:45:06 +05:30
Harendra Kumar
4fdc8360ff Include the size/alloc op costs in poke/roundtrip 2023-08-21 01:45:06 +05:30
Harendra Kumar
da249d8fd1 Move out code from CPP macro to Haskell 2023-08-21 01:45:06 +05:30
Harendra Kumar
d09a236c93 Add a TODO comment about checking bounds 2023-08-21 01:45:06 +05:30
Harendra Kumar
356eab0590 Add some explanatory comments in Serialize TH code 2023-08-21 01:45:06 +05:30
Harendra Kumar
31a679a7d9 Add array boundary checks during serialization 2023-08-21 01:45:06 +05:30
Harendra Kumar
f7f42e0242 Improve "size" op performance in Serialize
By using tail-recursive traversal of the structures.
2023-08-21 01:45:06 +05:30
Harendra Kumar
8b18616dba Add Data.Serialize to targets 2023-08-21 01:45:06 +05:30
Ranjeet Ranjan
1c584e545a
Move StreamK and StreamD folder up (#2543) 2023-08-19 15:38:58 +05:30
Harendra Kumar
e2d5628204 Enable asserts only after the -O2 option 2023-08-19 15:21:45 +05:30
Harendra Kumar
a819eb7e5d Add some module level notes to ToBytes 2023-08-19 07:54:08 +05:30
Adithya Kumar
2e53b60161 Increase memory for limit-build-mem on the Serialize test-suite 2023-08-18 23:07:50 +05:30
Adithya Kumar
041be85bb8 Limit number of tests in large quick check properties 2023-08-18 23:07:50 +05:30
Adithya Kumar
4997b47fe1 Add a recursive ADT to the Serialize test-suite 2023-08-18 23:07:50 +05:30
Adithya Kumar
9be03c89a6 Move functions from Data.Serialize to Data.Internal.Serialize 2023-08-18 23:07:50 +05:30
Adithya Kumar
c4343a47f7 Abstact size and simplify the CPP statement in Unbox tests 2023-08-18 23:07:50 +05:30
Harendra Kumar
3aba90980d Add INLINE to default instance methods of Unbox 2023-08-18 23:07:50 +05:30
Harendra Kumar
3a0562a692 Add INLINE pragmas on TH instance methods 2023-08-18 23:07:50 +05:30
Harendra Kumar
52ddfeed9c Add INLINE pragma on Serialize instances 2023-08-18 23:07:50 +05:30
Harendra Kumar
53aa2044ef Reuse the Serialize benchmark for Unbox as well
And add some more benchmarks.
2023-08-18 23:07:50 +05:30
Harendra Kumar
0efcac2bf7 Add a binary tree benchmark 2023-08-18 23:07:50 +05:30
Harendra Kumar
0957cd6516 Add benchmarks for Serialize module 2023-08-18 23:07:50 +05:30