Xmrig Dev Branch 1/4/2019#4
Open
setuidroot wants to merge 1867 commits into
Open
Conversation
Fix RandomX crash when compiled with fortify_source
RandomX: check pointer sizes during JIT initialization
No buffer overflow, better fix for `_FORTIFY_SOURCE`
RandomX: correct memcpy size for JIT initialization
RandomX v2: don't update dataset when switching to/from it
Fixed initial dataset prefetch for RandomX v2
Fix OpenCL address-space mismatch in keccak_f800_round
Don't reset nonce during donation rounds (possible fix for #3669)
Fixed clang arm64 builds
Fix arm64 builds (attempt number 2)
ARM64 JIT: Optimize Group E register conversion
Update FCMP++ block template layout
And a couple small improvements in the main loop.
RandomX: 2.5% faster dataset init on RISC-V
- optimized F/E register loading - aligned asm code - optimized emitAddImmediate for small negative values - v2: optimized CFROUND - v2: optimized AES in the main loop
ARM64 RandomX JIT optimizations
- ARM64: optimized emitMovImmediate/emitMemLoad - ARM64: disabled 32-bit literal preloading (it was slower) - Android and Linux: added MADV_COLLAPSE support to memory allocation
ARM64 RandomX optimizations
Two Apple-silicon-targeted tweaks to the aarch64 RandomX JIT: - Early dataset prefetch: when readReg2/readReg3 are finalized well before the end of the program body, emit the next iteration's dataset-line prefetch early to hide more DRAM latency on the serial scalar chain. - Non-temporal dataset loads: each 64-byte dataset line is read once and never reused, so ldp -> ldnp avoids evicting the hot scratchpad, and the prefetch hint moves pldl2strm -> pldl1strm to match the longer lead time. Measured ~8% hashrate gain on Apple M4 base over dev (7eadfdc).
ARM64 RandomX JIT: dataset prefetch + non-temporal loads (+~8% on M4 base)
This file contains hidden or 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
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.
No description provided.