Re: pgbench - add pseudo-random permutation function
Suzuki Hironobu <hironobu@interdb.jp>
From: Hironobu SUZUKI <hironobu@interdb.jp>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Cc: Fabien COELHO <coelho@cri.ensmp.fr>
Date: 2018-10-24T14:55:57Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
pgbench: Function to generate random permutations.
- 6b258e3d688d 14.0 landed
-
Add basic support for using the POPCNT and SSE4.2s LZCNT opcodes
- 711bab1e4d19 12.0 cited
-
Further improve code for probing the availability of ARM CRC instructions.
- a7a7387575b8 11.0 cited
Hi Fabian-san, I reviewed 'pgbench-prp-func/pgbench-prp-func-10.patch'. On 2018/10/24 12:55, Fabien COELHO wrote: > > Hello Hironobu-san, > >> In pseudorandom_perm(), `modular_multiply() + (key >> LCG_SHIFT)` may >> overflow if the result of modular_multiply() is large. Therefore, I've >> improved it. > >> Also, I've simplified Step 5 in modular_multiply(). > > Attached is a v10, where I have: > - updated some comments > - the + cannot overflow because size is taken from a signed int > and the added value is small thanks to the shift. > I have put back the simple formula and added a comment about it. > - added a few test cases, and fix the associated checks > I agree your discussion before. I checked the tests you added in this patch and I confirmed that there is no problem. I thinks this patch is fine. Best regards,