Re: Optimize mul_var() for var1ndigits >= 8
Dean Rasheed <dean.a.rasheed@gmail.com>
From: Dean Rasheed <dean.a.rasheed@gmail.com>
To: Joel Jacobson <joel@compiler.org>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2024-08-06T11:52:32Z
Lists: pgsql-hackers
Attachments
- v4-0001-Extend-mul_var_short-to-5-and-6-digit-inputs.patch (text/x-patch) patch v4-0001
- v4-0002-Optimise-numeric-multiplication-using-base-NBASE-.patch (text/x-patch) patch v4-0002
On Mon, 5 Aug 2024 at 13:34, Joel Jacobson <joel@compiler.org> wrote: > > Noted from 5e1f3b9eb: > "While it adds some space on 32-bit machines, we aren't optimizing for that case anymore." > > In this case, the extra 32-bit numeric_mul code seems to be 89 lines of code, excluding comments. > To me, this seems like quite a lot, so I lean on thinking we should omit that code for now. > We can always add it later if we get pushback. > OK, I guess that's reasonable. There is no clear-cut right answer here, but I don't really want to have a lot of 32-bit-specific code that significantly complicates this function, making it harder to maintain. Without that code, the patch becomes much simpler, which seems like a decent justification for any performance tradeoffs on 32-bit machines that are unlikely to affect many people anyway. Regards, Dean
Commits
-
Optimise numeric multiplication using base-NBASE^2 arithmetic.
- 8dc28d7eb868 18.0 landed
-
Extend mul_var_short() to 5 and 6-digit inputs.
- c4e44224cf61 18.0 landed