<oembed><type>rich</type><version>1.0</version><author_name>Tomas [ARCHIVE] (npub1rs…9evk4)</author_name><author_url>https://nostr.ae/npub1rsp4w56r24w3zv4xy8zfgesep45qmf9rq6aghxfw3wr7yemqnnwsf9evk4</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2017-04-07&#xA;📝 Original message:Thank you,&#xA;&#xA;&#xA;&#xA;The benches are running in Google Cloud Engine; currently on 8 vCPU&#xA;32gb, but I tend to switch hardware regularly.&#xA;&#xA;&#xA;Roughly, the results are better for Bitcrust with high end hardware and&#xA;the difference for total block validations is mostly diminished at 2&#xA;vCPU, 7,5 gb.&#xA;&#xA;&#xA;Note that the spend-tree optimization primarily aims to improve peak&#xA;load order validation; when a block with pre-synced transactions comes&#xA;in, but this is tricky to accurately bench with Core using this simple&#xA;method of comparison by logs.&#xA;&#xA;&#xA;I will upgrade to, and show the results against 0.14 in the next weeks.&#xA;&#xA;&#xA;Best,&#xA;&#xA;Tomas&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;On Fri, Apr 7, 2017, at 16:14, Greg Sanders wrote:&#xA;&#xA;&gt; Interesting work.&#xA;&#xA;&gt; &#xA;&#xA;&gt; I was wondering if you could tellank  us what specs for the machine&#xA;&gt; being used as preliminary benchmark is here:&#xA;&gt; https://bitcrust.org/results ?&#xA;&gt; &#xA;&#xA;&gt; I&#39;d be interested to also see comparisons with 0.14 which has some&#xA;&gt; improvements for script validation with more cores.&#xA;&gt; &#xA;&#xA;&gt; On Fri, Apr 7, 2017 at 4:47 AM, Tomas via bitcoin-dev &lt;bitcoin-&#xA;&gt; dev at lists.linuxfoundation.org&gt; wrote:&#xA;&gt;&gt; Thank you Marcos,&#xA;&#xA;&gt;&gt; &#xA;&#xA;&gt;&gt;  Though written in Rust, bitcrust-db is definitely usable as&#xA;&gt;&gt;  pluggable&#xA;&gt;&gt;  module as its interface will be roughly some queries, add_tx and&#xA;&#xA;&gt;&gt;  add_block with blobs and flags. (Bitcrust internally uses a&#xA;&#xA;&gt;&gt;  deserialize-only model, keeping references to the blobs with the&#xA;&gt;&gt;  parsed&#xA;&gt;&gt;  data).&#xA;&#xA;&gt;&gt; &#xA;&#xA;&gt;&gt;  However, from Core&#39;s side I believe network and storage are&#xA;&gt;&gt;  currently&#xA;&gt;&gt;  rather tightly coupled, which will make this far from trivial.&#xA;&#xA;&gt;&gt; &#xA;&#xA;&gt;&gt;  Regardless, I am also hoping (with funding &amp; a team) to build a&#xA;&gt;&gt;  Bitcrust&#xA;&gt;&gt;  networking component as well to bring a strong competitor to the&#xA;&gt;&gt;  market.&#xA;&gt;&gt; &#xA;&#xA;&gt;&gt;  best,&#xA;&#xA;&gt;&gt;  Tomas&#xA;&#xA;&gt;&gt; &#xA;&#xA;&gt;&gt; &#xA;&#xA;&gt;&gt; &#xA;&#xA;&gt;&gt; &#xA;&#xA;&gt;&gt; On Fri, Apr 7, 2017, at 09:55, Marcos mayorga wrote:&#xA;&#xA;&gt;&gt;  &gt; Hi Tomas,&#xA;&#xA;&gt;&gt;  &gt;&#xA;&#xA;&gt;&gt;  &gt; I&#39;ve read it and think it is an excellent work, I&#39;d like to see it&#xA;&gt;&gt;  &gt; integrated into bitcoin-core as a &#39;kernel module&#39;.&#xA;&#xA;&gt;&gt;  &gt;&#xA;&#xA;&gt;&gt;  &gt; I see there are a lot of proof of concepts out there, IMO&#xA;&gt;&gt;  &gt; every one&#xA;&gt;&gt;  &gt; deserve a room in the bitcoin client as a selectable feature, to&#xA;&gt;&gt;  &gt; make the&#xA;&gt;&gt;  &gt; software more flexible and less dictatorial, an user could easily&#xA;&gt;&gt;  &gt; select&#xA;&gt;&gt;  &gt; which features she wants to run.&#xA;&#xA;&gt;&gt;  &gt;&#xA;&#xA;&gt;&gt;  &gt; Best regards,&#xA;&#xA;&gt;&gt;  &gt; Marcos&#xA;&#xA;&gt;&gt;  &gt;&#xA;&#xA;&gt;&gt;  &gt; &gt; I have been working on a bitcoin implementation that uses a&#xA;&gt;&gt;  &gt; &gt; different&#xA;&gt;&gt;  &gt; &gt; approach to indexing for verifying the order of transactions.&#xA;&gt;&gt;  &gt; &gt; Instead of&#xA;&gt;&gt;  &gt; &gt; using an index of unspent outputs, double spends are verified by&#xA;&gt;&gt;  &gt; &gt; using a&#xA;&gt;&gt;  &gt; &gt; spend-tree where spends are scanned against spent outputs&#xA;&gt;&gt;  &gt; &gt; instead of&#xA;&gt;&gt;  &gt; &gt; unspent outputs.&#xA;&#xA;&gt;&gt;  &gt; &gt;&#xA;&#xA;&gt;&gt;  &gt; &gt; This allows for much better concurrency, as not only blocks, but&#xA;&gt;&gt;  &gt; &gt; also&#xA;&gt;&gt;  &gt; &gt; individual inputs can be verified fully in parallel.&#xA;&#xA;&gt;&gt;  &gt; &gt;&#xA;&#xA;&gt;&gt;  &gt; &gt; I explain the approach at https://bitcrust.org, source code is&#xA;&gt;&gt;  &gt; &gt; available&#xA;&gt;&gt;  &gt; &gt; at https://github.com/tomasvdw/bitcrust&#xA;&#xA;&gt;&gt;  &gt; &gt;&#xA;&#xA;&gt;&gt;  &gt; &gt; I am sharing this not only to ask for your feedback, but also to&#xA;&gt;&gt;  &gt; &gt; call&#xA;&gt;&gt;  &gt; &gt; for a clear separation of protocol and implementations: As this&#xA;&gt;&gt;  &gt; &gt; solution, reversing the costs of outputs and inputs, seems to&#xA;&gt;&gt;  &gt; &gt; have&#xA;&gt;&gt;  &gt; &gt; excellent performance characteristics (as shown in the test&#xA;&gt;&gt;  &gt; &gt; results),&#xA;&gt;&gt;  &gt; &gt; updates to the protocol addressing the UTXO growth, might not be&#xA;&gt;&gt;  &gt; &gt; worth&#xA;&gt;&gt;  &gt; &gt; considering *protocol improvements* and it might be best to&#xA;&gt;&gt;  &gt; &gt; address&#xA;&gt;&gt;  &gt; &gt; these concerns as implementation details.&#xA;&#xA;&gt;&gt;  &gt; &gt;&#xA;&#xA;&gt;&gt;  &gt; &gt; Kind regards,&#xA;&#xA;&gt;&gt;  &gt; &gt; Tomas van der Wansem&#xA;&#xA;&gt;&gt;  &gt; &gt; tomas at bitcrust.org&#xA;&#xA;&gt;&gt;  &gt; &gt; Bitcrust&#xA;&#xA;&gt;&gt;  &gt; &gt; _______________________________________________&#xA;&#xA;&gt;&gt;  &gt; &gt; bitcoin-dev mailing list&#xA;&#xA;&gt;&gt;  &gt; &gt; bitcoin-dev at lists.linuxfoundation.org&#xA;&#xA;&gt;&gt;  &gt; &gt; https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&#xA;&gt;&gt;  &gt; &gt;&#xA;&#xA;&gt;&gt;  &gt;&#xA;&#xA;&gt;&gt;  &gt;&#xA;&#xA;&gt;&gt;  _______________________________________________&#xA;&#xA;&gt;&gt;  bitcoin-dev mailing list&#xA;&#xA;&gt;&gt; bitcoin-dev at lists.linuxfoundation.org&#xA;&#xA;&gt;&gt; https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#xA;&#xA;&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20170407/68d9cba6/attachment.html&gt;</html></oembed>