Bitcoin full node and query server

Jun 16, 2024

View in context in the libbitcoin Slack #general mirror.

evoskuil18:07
Also, there is a command line option on bn that allows you to see what your compiler supports (without the need to compile with the option of course)... platform zero means not available, compiled zero means you didn't compile for it.
$ bn -c f:/bn.cfg --hardware
Intrinsics...
arm..... platform:0.
intel... platform:1.
avx512.. platform:0 compiled:0.
avx2.... platform:1 compiled:1.
sse41... platform:1 compiled:1.
shani... platform:0 compiled:0.
neon.... platform:0 compiled:0.
evoskuil13:59
I did extensive testing, including disassembly for comparison with C implementations, and detailed performance testing. The implementation relies heavily on compiler optimization. That’s the nature of C++. The developer manages the code such that the compiler can reduce it to efficient machine code while retaining the advantageous abstractions. Hashing (for example) is like 10x slower without full optimization.
(edited)
👍 1