summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Hearn <mike@plan99.net>2013-01-11 15:13:15 +0100
committerbitcoindev <bitcoindev@gnusha.org>2013-01-11 14:13:22 +0000
commit491da9bef6d9fae20c25d775221f84516b7855c0 (patch)
tree6809f700be6d31a33a656262627444ddec9fd47e
parent11570173ddd10df1439bb30ddd0da2323832733f (diff)
downloadpi-bitcoindev-491da9bef6d9fae20c25d775221f84516b7855c0.tar.gz
pi-bitcoindev-491da9bef6d9fae20c25d775221f84516b7855c0.zip
Re: [Bitcoin-development] Draft BIP for Bloom filtering
-rw-r--r--1f/57039af311279f00cfd8e4160b5a02ecd2ab39121
1 files changed, 121 insertions, 0 deletions
diff --git a/1f/57039af311279f00cfd8e4160b5a02ecd2ab39 b/1f/57039af311279f00cfd8e4160b5a02ecd2ab39
new file mode 100644
index 000000000..1814ff5b7
--- /dev/null
+++ b/1f/57039af311279f00cfd8e4160b5a02ecd2ab39
@@ -0,0 +1,121 @@
+Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194]
+ helo=mx.sourceforge.net)
+ by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
+ (envelope-from <mh.in.england@gmail.com>) id 1TtfMI-0005U2-6G
+ for bitcoin-development@lists.sourceforge.net;
+ Fri, 11 Jan 2013 14:13:22 +0000
+Received-SPF: pass (sog-mx-4.v43.ch3.sourceforge.com: domain of gmail.com
+ designates 209.85.214.170 as permitted sender)
+ client-ip=209.85.214.170; envelope-from=mh.in.england@gmail.com;
+ helo=mail-ob0-f170.google.com;
+Received: from mail-ob0-f170.google.com ([209.85.214.170])
+ by sog-mx-4.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
+ (Exim 4.76) id 1TtfMG-0002pR-Hz
+ for bitcoin-development@lists.sourceforge.net;
+ Fri, 11 Jan 2013 14:13:22 +0000
+Received: by mail-ob0-f170.google.com with SMTP id wp18so1766315obc.15
+ for <bitcoin-development@lists.sourceforge.net>;
+ Fri, 11 Jan 2013 06:13:15 -0800 (PST)
+MIME-Version: 1.0
+Received: by 10.182.88.3 with SMTP id bc3mr53741737obb.8.1357913595216; Fri,
+ 11 Jan 2013 06:13:15 -0800 (PST)
+Sender: mh.in.england@gmail.com
+Received: by 10.76.128.139 with HTTP; Fri, 11 Jan 2013 06:13:15 -0800 (PST)
+In-Reply-To: <CANEZrP2k30UsWFYSZ7Bh5Hm4LJ9vEAMEUgYSrYkcXcDTY2Z79Q@mail.gmail.com>
+References: <CANEZrP0XALwBFJyZTzYd5xBp4MRrjv0s_y2tOXbO7UgjWF2HzA@mail.gmail.com>
+ <20121121151534.GA5540@vps7135.xlshosting.net>
+ <1353523117.1085.14.camel@localhost.localdomain>
+ <20121127211019.GA22701@vps7135.xlshosting.net>
+ <CANEZrP0w052ebao-04H4Wduerm86o6RKBY=ObnJXBX22k--zMA@mail.gmail.com>
+ <1357876751.1740.4.camel@localhost.localdomain>
+ <CA+8xBpcB6kXWyRbeUknK6gkcrFMV6YtrDk0c938q1_32U6GtRw@mail.gmail.com>
+ <CANEZrP2k30UsWFYSZ7Bh5Hm4LJ9vEAMEUgYSrYkcXcDTY2Z79Q@mail.gmail.com>
+Date: Fri, 11 Jan 2013 15:13:15 +0100
+X-Google-Sender-Auth: 0Nkh8VdhW7BfJ-TIVuDLzNkl-1Q
+Message-ID: <CANEZrP3KKGOPM7BzWAr1xGqh96iEzJ+Ki2hdUTe0Gvv51pJ23w@mail.gmail.com>
+From: Mike Hearn <mike@plan99.net>
+To: Jeff Garzik <jgarzik@exmulti.com>
+Content-Type: text/plain; charset=UTF-8
+X-Spam-Score: -1.5 (-)
+X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
+ See http://spamassassin.org/tag/ for more details.
+ -1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for
+ sender-domain
+ 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider
+ (mh.in.england[at]gmail.com)
+ -0.0 SPF_PASS SPF: sender matches SPF record
+ 0.1 DKIM_SIGNED Message has a DKIM or DK signature,
+ not necessarily valid
+ -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
+X-Headers-End: 1TtfMG-0002pR-Hz
+Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
+Subject: Re: [Bitcoin-development] Draft BIP for Bloom filtering
+X-BeenThere: bitcoin-development@lists.sourceforge.net
+X-Mailman-Version: 2.1.9
+Precedence: list
+List-Id: <bitcoin-development.lists.sourceforge.net>
+List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
+ <mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
+List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
+List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
+List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
+List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
+ <mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
+X-List-Received-Date: Fri, 11 Jan 2013 14:13:22 -0000
+
+Oh, one last stat - syncing the entire chain with a wallet containing
+two keys and a 0.0001 FP rate (one or two FPs every 5 blocks or so)
+resulted in a download of about 46mb of data.
+
+On Fri, Jan 11, 2013 at 3:11 PM, Mike Hearn <mike@plan99.net> wrote:
+> I did some very rough initial performance tests.
+>
+> Syncing from a local peer gives me about 50 blocks per second in the
+> later parts of the chain (post SD), which is about a 10-20x speedup
+> over what I could do before. This is on a MacBook Pro. But at those
+> points it's clearly bottlenecked by bitcoind which has saturated its
+> CPU core. This makes sense - the filtering is much more server than
+> client intensive because every transaction in every block has to be
+> loaded and checked.
+>
+> I think filtering can be fairly well parallelized on the server side.
+> So the current 10-20x speedup could potentially be larger if the
+> server becomes more efficient at scanning and filtering blocks. It's
+> still a very nice win for now, especially bandwidth wise. And if Matt
+> makes the mempool command filtered it solves a common usability
+> problem as well.
+>
+> Once we get this code in, merged and rolled out I think what we need
+> for bloom v2 is clear:
+>
+> - Multi-thread the filtering process in bitcoind so transactions can
+> be checked in parallel. A 4-core server would then get 4x faster at
+> filtering blocks and assuming it's not too busy doing other stuff we
+> could maybe sync at more like 200 blocks per second, which is cool ...
+> more than a days worth of history for each second of syncing.
+>
+> - Make the client smarter so the FP rate is adapted during the sync
+> process. An FP rate that makes sense post-SD results in no false
+> positives pre-SD, more or less.
+>
+> - Make the client shard its wallet keys over multiple peers, for
+> better privacy.
+>
+> - Make the client suck down filtered blocks in parallel from multiple
+> peers, for better speed.
+>
+> As it seems the bottleneck for chain sync is now CPU time, the latter
+> point may be the most important from a practical perspective.
+>
+> On Fri, Jan 11, 2013 at 6:02 AM, Jeff Garzik <jgarzik@exmulti.com> wrote:
+>> On Thu, Jan 10, 2013 at 10:59 PM, Matt Corallo <bitcoin-list@bluematt.me> wrote:
+>>> Ive been missing lately, when is 0.8 targeted for freeze?
+>>
+>> 0.8rc1 will probably happen when the core ultraprune/leveldb stuff is stable.
+>>
+>> --
+>> Jeff Garzik
+>> exMULTI, Inc.
+>> jgarzik@exmulti.com
+
+