1
0
mirror of https://github.com/facebook/zstd.git synced 2025-07-06 23:56:40 +02:00
Commit Graph

66 Commits

Author SHA1 Message Date
5eb749e734 ZSTDMT_compress() creates a single frame
The new strategy involves cutting frame at block level.
The result is a single frame, preserving ZSTD_getDecompressedSize()

As a consequence, bench can now make a full round-trip,
since the result is compatible with ZSTD_decompress().

This strategy will not make it possible to decode the frame with multiple threads
since the exact cut between independent blocks is not known.
MT decoding needs further discussions.
2017-01-11 18:21:25 +01:00
04cbc36499 minor refactor (release CCtx 1st) and comment clarification 2017-01-11 16:08:08 +01:00
085179bb78 fixed ZSTDMT_createCCtx() : checked inner objects are properly created 2017-01-11 15:58:05 +01:00
8ce1cc2bec improved ZSTD_createCCtxPool() cancellation
use ZSTD_freeCCtxPool() to release the partially created pool.
avoids to duplicate logic.

Also : identified a new difficult corner case :
when freeing the Pool, all CCtx should be previously released back to the pool.
Otherwise, it means some CCtx are still in use.
There is currently no clear policy on what to do in such a case.
Note : it's supposed to never happen.
Since pool creation/usage is static, it has no external user,
which limits risks.
2017-01-11 15:44:26 +01:00
47557ba2b2 fixed ZSTDMT_createCCtxPool() when inner CCtx creation fails 2017-01-11 15:35:56 +01:00
f1cb55192c fixed linux warnings 2017-01-02 01:11:55 +01:00
0ec6a95ba1 minor fixes 2017-01-02 00:49:42 +01:00
2ec635a162 use pthread_cond to send signals between threads 2017-01-01 17:31:33 +01:00
3b9d434356 extended ZSTDMT code support for non-MT systems and WIN32 (preliminary) 2016-12-31 16:32:19 +01:00
c8efc1c874 simplified Buffer Pool 2016-12-31 14:45:33 +01:00
3b29dbd9e8 new zstdmt version using generic treadpool 2016-12-31 06:04:25 +01:00
c6a6417458 bench correctly measures time for multi-threaded compression (posix only) 2016-12-31 03:31:26 +01:00
e70912c72b Changed : input divided into roughly equal parts.
Debug : can measure time waiting for mutexes to unlock.
2016-12-29 01:24:01 +01:00
6c0ed9483a compression threads use ZSTD_compressCCtx() 2016-12-28 17:08:28 +01:00
ce9e1452fd protect buffer pool with a mutex 2016-12-28 15:31:19 +01:00
3d93f2fce7 first zstdmt sketch 2016-12-27 07:19:36 +01:00