Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sI3Cd-00CUyt-5J for pgsql-hackers@arkaria.postgresql.org; Fri, 14 Jun 2024 09:26:35 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sI3Ca-00GCAw-Qc for pgsql-hackers@arkaria.postgresql.org; Fri, 14 Jun 2024 09:26:33 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sHvQF-00AlbX-PA for pgsql-hackers@lists.postgresql.org; Fri, 14 Jun 2024 01:08:08 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sHvQD-001Cga-8c for pgsql-hackers@lists.postgresql.org; Fri, 14 Jun 2024 01:08:07 +0000 Received: from coridan.postgresql.org ([2001:4800:3e1:1::213]) by mahout.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sHvQC-003ohC-H9 for pgsql-hackers@lists.postgresql.org; Fri, 14 Jun 2024 01:08:04 +0000 Received: from localhost ([127.0.0.1] helo=coridan.postgresql.org) by coridan.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sHvQA-003KBA-Bn for pgsql-hackers@lists.postgresql.org; Fri, 14 Jun 2024 01:08:02 +0000 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: Re: Optimize numeric.c mul_var() using the Karatsuba algorithm To: pgsql-hackers@lists.postgresql.org From: Aaron Altman Cc: Joel Jacobson Date: Fri, 14 Jun 2024 01:07:21 +0000 User-Agent: pgcommitfest X-cfsender: aaltman In-Reply-To: References: <7f95163f-2019-4416-a042-6e2141619e5d@app.fastmail.com> Message-ID: <171832724172.156537.15821392522000571944.pgcf@coridan.postgresql.org> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk VGhlIGZvbGxvd2luZyByZXZpZXcgaGFzIGJlZW4gcG9zdGVkIHRocm91Z2ggdGhlIGNvbW1pdGZl c3QgYXBwbGljYXRpb246Cm1ha2UgaW5zdGFsbGNoZWNrLXdvcmxkOiAgbm90IHRlc3RlZApJbXBs ZW1lbnRzIGZlYXR1cmU6ICAgICAgIG5vdCB0ZXN0ZWQKU3BlYyBjb21wbGlhbnQ6ICAgICAgICAg ICBub3QgdGVzdGVkCkRvY3VtZW50YXRpb246ICAgICAgICAgICAgbm90IHRlc3RlZAoKVGhpcyBh cHBsaWVzIGNsZWFubHkgdG8gbWFzdGVyLCBidWlsZHMgYW5kIHBhc3NlcyByZWdyZXNzaW9uIHRl c3RzIGluIG15IFdpbmRvd3MvQ3lnd2luIGVudmlyb25tZW50LiAgDQoNCkkgYWxzbyByZWFkIHRo cm91Z2ggY29tbWVudHMgYW5kIGNvbmZpcm1lZCBmb3IgbXlzZWxmIHRoYXQgdGhlIGFzc3VtcHRp b24gYWJvdXQgdGhlIGNhbGxlciBlbnN1cmluZyB2YXIxIGlzIHNob3J0ZXIgaXMgZG9uZSBhbHJl YWR5IGluIHVuY2hhbmdlZCBjb2RlIGZyb20gbXVsX3Zhci4gIEZyZWVzIGNvcnJlc3BvbmQgdG8g aW5pdHMuICBUaGUgIkthcmF0c3ViYSBjb25kaXRpb24iIHJlYXNvbmluZyBmb3IgZGVjaWRpbmcg d2hldGhlciBhIG51bWJlciBpcyBiaWcgZW5vdWdoIHRvIHVzZSB0aGlzIGFsZ29yaXRobSBhcHBl YXJzIHRvIG1hdGNoIHdoYXQgSm9lbCBoYXMgc3RhdGVkIGluIHRoaXMgdGhyZWFkLg0KDQpUaGUg YXJpdGhtZXRpYyBhcHBlYXJzIHRvIG1hdGNoIHdoYXQncyBiZWVuIGRlc2NyaWJlZCBpbiB0aGUg Y29tbWVudHMuICBJIGhhdmUgKm5vdCogY29uZmlybWVkIHRoYXQgd2l0aCBhbnkgZGV0YWlsZWQg cmV2aWV3IG9mIHRoZSBLYXJhdHN1YmEgYWxnb3JpdGhtIGZyb20gb3V0c2lkZSBzb3VyY2VzLCBv dGhlciBpbXBsZW1lbnRhdGlvbnMgbGlrZSB0aGUgUnVzdCBvbmUgcmVmZXJlbmNlZCBoZXJlLCBv ciBhbnl0aGluZyBzaW1pbGFyLiAgSSdtIGhvcGluZyB0aGF0IHRoZSByZWdyZXNzaW9uIHRlc3Rz IGdpdmUgc3VmZmljaWVudCBjb3ZlcmFnZSB0aGF0IGlmIHRoZSBhcml0aG1ldGljIHdhcyBpbmNv cnJlY3QgdGhlcmUgd291bGQgYmUgb2J2aW91cyBmYWlsdXJlcy4gIElmIGFkZGl0aW9uYWwgY292 ZXJhZ2Ugd2FzIG5lZWRlZCwgY2FzZXMgZmFsbGluZyBpbW1lZGlhdGVseSBvbiBlaXRoZXIgc2lk ZSBvZiB0aGUgbGltaXRpbmcgY29uZGl0aW9ucyB1c2VkIGluIHRoZSBwYXRjaCB3b3VsZCBwcm9i YWJseSBiZSB1c2VmdWwuICBGcm9tIHRoZSBsaW1pdGVkIHByZWNlZGVudCBJJ3ZlIGV4cG9zZWQg bXlzZWxmIHRvLCB0aGF0IGRvZXNuJ3Qgc2VlbSB0byBiZSByZXF1aXJlZCBoZXJlLCBidXQgSSdt IG9wZW4gdG8gY29udHJhcnkgaW5wdXQgZnJvbSBvdGhlciByZXZpZXdlcnMuICBJbiB0aGUgbWVh bnRpbWUsIEknbSBtYXJraW5nIHRoaXMgYXBwcm92ZWQuICANCg0KVGhhbmtzIGZvciB0aGUgZGV0 YWlsZWQgYmFja2dyb3VuZCBhbmQgY29tbWVudHMsIEpvZWwhCgpUaGUgbmV3IHN0YXR1cyBvZiB0 aGlzIHBhdGNoIGlzOiBSZWFkeSBmb3IgQ29tbWl0dGVyCg==