Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iRlrG-0000sO-Bw for pgsql-performance@arkaria.postgresql.org; Mon, 04 Nov 2019 23:34:02 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1iRlrF-0004jR-2C for pgsql-performance@arkaria.postgresql.org; Mon, 04 Nov 2019 23:34:01 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iRlrE-0004jJ-Hd for pgsql-performance@lists.postgresql.org; Mon, 04 Nov 2019 23:34:00 +0000 Received: from gproxy1-pub.mail.unifiedlayer.com ([69.89.25.95]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iRlr6-0001Pe-3Z for pgsql-performance@lists.postgresql.org; Mon, 04 Nov 2019 23:33:59 +0000 Received: from cmgw15.unifiedlayer.com (unknown [10.9.0.15]) by gproxy1.mail.unifiedlayer.com (Postfix) with ESMTP id DC2F0F7F7DE38 for ; Mon, 4 Nov 2019 16:33:26 -0700 (MST) Received: from host214.hostmonster.com ([74.220.215.214]) by cmsmtp with ESMTP id RlqgipY6QXy4mRlqgij2gd; Mon, 04 Nov 2019 16:33:26 -0700 X-Authority-Reason: nr=8 X-Authority-Analysis: v=2.3 cv=F7N5iJpN c=1 sm=1 tr=0 a=E7lA7DdVRVhKYBNJxJVZOg==:117 a=E7lA7DdVRVhKYBNJxJVZOg==:17 a=dLZJa+xiwSxG16/P+YVxDGlgEgI=:19 a=MeAgGD-zjQ4A:10:nop_rcvd_month_year a=ogUk0nqDRaQA:10:endurance_base64_authed_username_1 a=r77TgQKjGQsHNAKrUKIA:9 a=8hghKbX9AAAA:20 a=9wEFEmgGAAAA:8 a=Gz7s5_CCAAAA:8 a=vx1t0zPRrZAK9oMGlkcA:9 a=QEXdDO2ut3YA:10:nop_charset_2 a=Re7PpnHYR-8r9fLhN-oA:9 a=ZVt1fe0V-60vVIrf:21 a=_W_S_7VecoQA:10:nop_html a=URuH0njPyasT08JpGQTJ:22 a=pHzHmUro8NiASowvMSCR:22 a=nt3jZW36AmriUCFCBwmW:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=pragmaticdata.com; s=default; h=Content-Type:MIME-Version:Date:Message-ID: Subject:From:To:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=1Dn3b3ufWnCwIXEQB7eam6pUoNSZjZQhBKbJJPQuFbA=; b=SE9Gees4t0m6lZV/cTd7q0kZQj dDPm+2od2WU0oq19SVnmWqYdzF9EsOcbSu79aak4L4YUPAs4irqF72tQ9OT1B/qqXNiXutmCRK88P S2EMjdJOidZ5q+KaZyKH2q6Gd; Received: from [179.223.101.8] (port=58640 helo=[10.0.0.105]) by host214.hostmonster.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.92) (envelope-from ) id 1iRlqf-002BgB-LE for pgsql-performance@lists.postgresql.org; Mon, 04 Nov 2019 16:33:26 -0700 To: "pgsql-performance@lists.postgresql.org" From: Gunther Subject: FPGA optimization ... Message-ID: Date: Mon, 4 Nov 2019 18:33:15 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="------------9C20CF9DAA7C4765F102DA11" Content-Language: en-US X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - host214.hostmonster.com X-AntiAbuse: Original Domain - lists.postgresql.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - gusw.net X-BWhitelist: no X-Source-IP: 179.223.101.8 X-Source-L: No X-Exim-ID: 1iRlqf-002BgB-LE X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: ([10.0.0.105]) [179.223.101.8]:58640 X-Source-Auth: gunther+pragmaticdata.com X-Email-Count: 1 X-Source-Cap: cHJhZ21hdDE7cHJhZ21hdDE7aG9zdDIxNC5ob3N0bW9uc3Rlci5jb20= X-Local-Domain: yes List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is a multi-part message in MIME format. --------------9C20CF9DAA7C4765F102DA11 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit The time has come. FPGA optimization is in the palm of our hands (literally a 2 TB 40 GB/s IO PostgreSQL server fits into less than a shoe box), and on Amazon AWS F1 instances. Some demos are beginning to exist: https://github.com/Xilinx/data-analytics. But a lot more could be done. How about linear sort performance at O(N)? https://hackaday.com/2016/01/20/a-linear-time-sorting-algorithm-for-fpgas/. And how about ​https://people.csail.mit.edu/wjun/papers/fccm2017.pdf, the following four sorting accelerators are used: * Tuple Sorter : Sorts an N-tuple using a sorting network. * Page Sorter : Sorts an 8KB (a flash page) chunk of sorted N-tuples in on-chip memory. * Super-Page Sorter : Sorts 16 8K-32MB sorted chunks in DRAM. * Storage-to-Storage Sorter: Sorts 16 512MB or larger sorted chunks in flash. Order of magnitude speed improvements? Better than Hadoop clusters on a single chip? 40 GB/s I/O throughput massive full table scan, blazing fast sort-merge joins? Here it is. Anybody working more on that? Should be an ideal project for a student or a group of students. Is there a PostgreSQL foundation I could donate to, 501(c)(3) tax exempt? I can donate and possibly find some people at Purdue University who might take this on. Interest? regards, -Gunther --------------9C20CF9DAA7C4765F102DA11 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit

The time has come.

FPGA optimization is in the palm of our hands (literally a 2 TB 40 GB/s IO PostgreSQL server fits into less than a shoe box), and on Amazon AWS F1 instances.

Some demos are beginning to exist: https://github.com/Xilinx/data-analytics.

But a lot more could be done. How about linear sort performance at O(N)? https://hackaday.com/2016/01/20/a-linear-time-sorting-algorithm-for-fpgas/. And how about ​https://people.csail.mit.edu/wjun/papers/fccm2017.pdf, the following four sorting accelerators are used:

  • Tuple Sorter : Sorts an N-tuple using a sorting network.
  • Page Sorter : Sorts an 8KB (a flash page) chunk of sorted N-tuples in on-chip memory.
  • Super-Page Sorter : Sorts 16 8K-32MB sorted chunks in DRAM.
  • Storage-to-Storage Sorter: Sorts 16 512MB or larger sorted chunks in flash.

Order of magnitude speed improvements? Better than Hadoop clusters on a single chip? 40 GB/s I/O throughput massive full table scan, blazing fast sort-merge joins? Here it is. Anybody working more on that? Should be an ideal project for a student or a group of students.

Is there a PostgreSQL foundation I could donate to, 501(c)(3) tax exempt? I can donate and possibly find some people at Purdue University who might take this on. Interest?

regards,
-Gunther

--------------9C20CF9DAA7C4765F102DA11--