forked from erlang/otp
-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[pull] master from erlang:master #252
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The +R flag has not been used since 2012, so we remove it from the docs but keep it in the code in case we ever need to use it again in the future.
…rapper-include erts: Fix missing include of dtrace-wrapper.h
zstd: Update to v1.5.7 version
…19551 erts: Remove +R from documentation
Reviewer's Guide by SourceryThis pull request introduces several performance improvements and new features to the Zstandard compression library. It includes changes to the block splitter logic, the addition of a new function for compressing sequences and literals, and updates to the handling of external sequences. It also renames some variables and functions for clarity and consistency. Updated class diagram for ZSTD_CCtxclassDiagram
class ZSTD_CCtx {
-POOL_ctx* factory
-ZSTD_customMem cMem
-ZSTD_CCtx_params params
-const ZSTD_CDict* cdict
-ZSTD_CDict* cdictLocal
-unsigned long long frameContentSize
-size_t targetSectionSize
-size_t targetPrefixSize
-int jobReady
-inBuff_t inBuff
-roundBuff_t roundBuff
-serialState_t serial
-rsyncState_t rsync
-unsigned jobIDMask
-unsigned doneJobID
-unsigned nextJobID
-ZSTD_pthread_mutex_t jobCounterMutex
-ZSTD_pthread_cond_t jobCounterCond
-int nbJobsLaunched
-int nbJobsCompleted
-int allJobsCompleted
-ZSTDMT_jobDescription* jobs
-size_t consumed
-size_t produced
-int streamEnd
-int checksumState
-U32 checksum
}
class inBuff_t {
-range_t prefix
-buffer_t buffer
-size_t filled
}
class range_t {
-void const* start
-size_t size
}
class buffer_t {
-void* start
-size_t capacity
}
class roundBuff_t {
-BYTE* buffer
-size_t capacity
-size_t pos
}
class serialState_t {
-ZSTD_pthread_mutex_t mutex
-ZSTD_pthread_cond_t cond
-ZSTD_CCtx_params params
-size_t jobSize
-ldmState_t ldmState
-unsigned nextJobID
}
class ldmState_t {
-ZSTD_paramSwitch_e enableLdm
-U32 hashLog
-U32 bucketSizeLog
-U32 minMatchLength
-U32 hashRateLog
-U32 lowComplexityLog
-U32* bucketOffsets
-ZSTD_window_t window
}
class ZSTD_window_t {
-BYTE* base
-U32 lowLimit
-U32 dictLimit
-U32 nextSrc
-U32 current
-BYTE* dictBase
}
class rsyncState_t {
-U64 hash
-U64 hitMask
-U64 primePower
}
ZSTD_CCtx -- inBuff_t : has
inBuff_t -- range_t : has
inBuff_t -- buffer_t : has
ZSTD_CCtx -- roundBuff_t : has
ZSTD_CCtx -- serialState_t : has
serialState_t -- ldmState_t : has
ldmState_t -- ZSTD_window_t : has
ZSTD_CCtx -- rsyncState_t : has
note for ZSTD_CCtx "Manages compression context and parameters for multi-threaded compression."
note for inBuff_t "Input buffer management for compression jobs."
note for roundBuff_t "Round buffer for managing input data in a circular manner."
note for serialState_t "Serial state for managing LDM and other serial operations."
note for ldmState_t "Long Distance Matching state for improving compression ratio."
note for ZSTD_window_t "Window state for managing the compression history."
note for rsyncState_t "State for rsync algorithm to find synchronization points."
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.1)
Can you help keep this open source service alive? 💖 Please sponsor : )