map_benchmark
Bitcoin
Our great sponsors
map_benchmark | Bitcoin | |
---|---|---|
5 | 906 | |
287 | 75,985 | |
- | 2.2% | |
5.5 | 10.0 | |
about 1 year ago | 5 days ago | |
C++ | C++ | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
map_benchmark
-
Optimizing Open Addressing
I tied adding the maps to the [1] benchmark, but I wasn't able to, since they aren't type generic yet. You may want to benchmark against [2], and [3] which are the best performing ones in the above benchmark.
[1] https://github.com/martinus/map_benchmark/
[2] https://github.com/TheNumbat/hashtables/blob/main/code/robin...
[3] https://github.com/ktprime/ktprime
-
Benchmarking my data structure
In any case, I guess you can find some inspiration in this comparison of maps which was posted to /r/cpp a couple of months ago: https://martin.ankerl.com/2022/08/27/hashmap-bench-01/ (source code for the benchmark seems to be on https://github.com/martinus/map_benchmark ). It's made for maps but adjusting most benchmarks for other containers should be fairly straightforward.
-
Is there a committee paper on a "simplified" random interface?
There is no such thing as best random generator. They have so many different properties, e.g. is it cryptographic secure, how large is the state, how fast on x86 architecture, can it jump forward, etc. My go-to generator is sfc64 because it's fast, simple, and seems to produce high quality random numbers. Here is one implementation: https://github.com/martinus/map_benchmark/blob/master/src/app/sfc64.h other popular generators are PCG and xorshift
-
boost::unordered map is a new king of data structures
I've implemented this PoolAllocator which does exactly this: https://github.com/martinus/map_benchmark/blob/master/src/app/pool.h
-
Development Plan for Boost.Unordered
Hi Martin, thanks for the pointer! BTW, I think we may use your impressive benchmark suite to test our advances once we come up with something worth deep testing.
Bitcoin
-
Analyzing Bitcoin Transactions with Lightning Node Insights
Ubuntu/Debian: Install LND: https://github.com/lightningnetwork/lnd/blob/master/docs/INSTALL.md#install-lnd Install Bitcoin Core: https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md#linux-instructions
-
Simulate your first Lightning transaction on the Bitcoin regtest network Part 1 (MacOS)
To be able to follow along, you must have both bitcoind and lnd installed.
-
Generating and Working With ScriptPubKeys in Bitcoin Transactions
As mentioned previously, ScriptPubKeys are scripts that embody the locking conditions of bitcoins in a Bitcoin transaction. They are a crucial element of a Bitcoin transaction that specifies the requirements that must be met before an unspent transaction output (UTXO) is used. The ScriptPubKey, combined with the Amount, creates an output of a Bitcoin transaction. Like every other script, ScriptPubKeys are made up of operators and data. During the encoding of a transaction, both data and the operands are represented in hexadecimal format. You can find the hex representation for all operands used in Bitcoin Scripts here.
-
Understanding BTC Software
Which article? Have a look at Luke's CVE and pull request https://nvd.nist.gov/vuln/detail/CVE-2023-50428 https://github.com/bitcoin/bitcoin/pull/28408
- On chain censorship "war" heats up on BTC with a CVE raised against Ordinals
- What are some of the arguments for / against limiting datacarriersize ?
-
BTC's Luke Dashjr: '24 Bitcoin Core Update Will Disrupt Ordinals, BRC-20
From github pull request discussion: https://github.com/bitcoin/bitcoin/pull/28408
- Daily General Discussion - December 10, 2023
-
Polling The r/Bitcoin Community: Should Bitcoin be JUST a monetary network for P2P Transactions, Or Also a Platform For Content?
See: https://github.com/bitcoin/bitcoin/issues/10494
What are some alternatives?
robin-map - C++ implementation of a fast hash map and hash set using robin hood hashing
umbrel - A beautiful home server OS for self-hosting with an app store. Buy a pre-built Umbrel Home with umbrelOS, or install on a Raspberry Pi 4, Pi 5, any Ubuntu/Debian system, or a VPS.
unordered_dense - A fast & densely stored hashmap and hashset based on robin-hood backward shift deletion
BitcoinJS - A javascript Bitcoin library for node.js and browsers.
Hopscotch map - C++ implementation of a fast hash map and hash set using hopscotch hashing
js-git - A JavaScript implementation of Git.
unordered - Boost.org unordered module
PDFKit - A JavaScript PDF generation library for Node and the browser
parallel-hashmap - A family of header-only, very fast and memory-friendly hashmap and btree containers.
webtorrent - ⚡️ Streaming torrent client for the web
robin-hood-hashing - Fast & memory efficient hashtable based on robin hood hashing for C++11/14/17/20
naivecoin - A cryptocurrency implementation in less than 1500 lines of code