d7da4ecc33
Improve speed and accuracy of zcbenchmark validatelargetx The verification test, in a loop, passes `spending_tx` (a `CMutableTransaction`) to the constructor of `MutableTransactionSignatureChecker`, which immediately uses it to create a non-mutable `CTransaction` object, which is used for the actual verification process. Since `spending_tx` is not mutated during the verification loop & process, we can instead convert it to a `CTransaction` just once, and use it with `TransactionSignatureChecker`. This removes the time to create `CTransaction` objects from the benchmark itself. Results show an improvement in running time to complete the verification phase of the test and consistent times across z7 and z8 releases. ``` Benchmarks on i3 processor: z7 old 228.67205900 --> z7 new 49.27225200 z7 old 229.90048900 --> z7 new 48.38650700 z8 old 295.77963800 --> z8 new 48.37695100 z8 old 294.32640100 --> z8 new 49.93216100 ``` |
||
---|---|---|
.tx | ||
build-aux/m4 | ||
contrib | ||
depends | ||
doc | ||
qa | ||
share | ||
src | ||
zcutil | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
COPYING | ||
INSTALL | ||
Makefile.am | ||
README.md | ||
autogen.sh | ||
code_of_conduct.md | ||
configure.ac | ||
libbitcoinconsensus.pc.in |
README.md
Zcash
Where do I begin?
We have a guide for joining the public testnet: https://github.com/zcash/zcash/wiki/Public-Alpha-Guide
What is Zcash?
Zcash is an implementation of the "Zerocash" protocol. Based on Bitcoin's code, it intends to offer a far higher standard of privacy and anonymity through a sophisticiated zero-knowledge proving scheme which preserves confidentiality of transaction metadata.
Zcash is unfinished and highly experimental. Use at your own risk.
Participation in the Zcash project is subject to a Code of Conduct.
Security Warnings
See important security warnings in doc/security-warnings.md.
License
Zcash is released under the terms of the MIT license. See COPYING for more information or see http://opensource.org/licenses/MIT.