Create TypedRow serializer "A(daptive)Row" which is version-change tolerant and faster than Slim
Closed this issue · 3 comments
itadapter commented
- Uses var bit encoding
- Versioned stream
- Dont use string prop names, use 8 byte long monikers (8 char ASCII)
- If cant match field write to Amorphous data
- Compile into C# for embedding into pre-compiled Core.CLR
itadapter commented
- NFX.NUnit.Serialization.ARowBenchmarking.Deserialize_Family_Arow
Arow did 250,000 in 2,325 ms at 107,527 ops/sec. Stream Size is: 718 bytes - NFX.NUnit.Serialization.ARowBenchmarking.Deserialize_Family_Slim
Slim did 250,000 in 4,037 ms at 61,927 ops/sec. Stream Size is: 501 bytes
- NFX.NUnit.Serialization.ARowBenchmarking.Deserialize_SimplePerson_Arow
Arow did 250,000 in 172 ms at 1,453,488 ops/sec. Stream Size is: 86 bytes - NFX.NUnit.Serialization.ARowBenchmarking.Deserialize_SimplePerson_Slim
Slim did 250,000 in 226 ms at 1,106,195 ops/sec. Stream Size is: 59 bytes
- NFX.NUnit.Serialization.ARowBenchmarking.Serialize_Family_Arow
Arow did 250,000 in 1,449 ms at 172,533 ops/sec. Stream Size is: 718 bytes - NFX.NUnit.Serialization.ARowBenchmarking.Serialize_Family_Slim
Slim did 250,000 in 5,053 ms at 49,476 ops/sec. Stream Size is: 501 bytes
- NFX.NUnit.Serialization.ARowBenchmarking.Serialize_SimplePerson_Arow
Arow did 250,000 in 155 ms at 1,612,903 ops/sec. Stream Size is: 86 bytes - NFX.NUnit.Serialization.ARowBenchmarking.Serialize_SimplePerson_Slim
Slim did 250,000 in 177 ms at 1,412,429 ops/sec. Stream Size is: 59 bytes
itadapter commented
Add interface for custom serialization so struts and classes can get processed
itadapter commented
Will create a separate issue. Close this