SharpHDiffPatch-v1.4.0
What's new?
Performance Optimization
- Vectorize _TBytesRle_load_stream_mem_add()'s copy process
- Replace each struct and class's integer props type from ulong to long and int
- Use its own independent VarInt decoder for int and long
- Enumerate covers instead of buffering it
- Using SSE2 Vector128 for RLE data copy
- Remove unnecessary loop in
_patch_add_old_with_rle
Minor Changes
- Add stream caching cancellable
- Enumerate covers instead of buffering it
- Use long integer for UpdateEvent()
- Switching to .NET 7.0
What's fixed?
Benchmark Result (v1.4.0 vs v1.3.1)
Sample: UnityPlayer.dll
Result (Single file)
Version | Buffer Off | Buffer On |
---|---|---|
v1.3.1 | 963.2098 ms | 784.3218 ms |
v1.4.0 | 158.5076 ms | 94.1231 ms |